22.11.2014 Views

Diseño de un Algoritmo en Hardware para la ... - Iberchip.net

Diseño de un Algoritmo en Hardware para la ... - Iberchip.net

Diseño de un Algoritmo en Hardware para la ... - Iberchip.net

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

DISEÑO DE UN ALGORITMO EN HARDWARE PARA LA<br />

SINCRONIZACIÓN DE PORTADORA<br />

Ferney Amaya-Fernán<strong>de</strong>z*, Jaime Ve<strong>la</strong>sco-Medina<br />

Grupo <strong>de</strong> Bionanoelectrónica, Escue<strong>la</strong> EIEE, Universidad <strong>de</strong>l Valle, Cali, Colombia<br />

*Grupo <strong>de</strong> Automática y Robótica, GAR, Universidad Javeriana, Cali, Colombia<br />

E-mail: foamaya@puj.edu.co, jve<strong>la</strong>sco@<strong>un</strong>ivalle.edu.co<br />

ABSTRACT<br />

Este artículo pres<strong>en</strong>ta el diseño <strong>de</strong> <strong>un</strong> nuevo algoritmo<br />

implem<strong>en</strong>tado <strong>en</strong> hardware <strong>para</strong> <strong>la</strong> sincronización <strong>de</strong><br />

portadora <strong>en</strong> Radio Software (RS). La sincronización <strong>de</strong><br />

portadora y <strong>de</strong> bits es <strong>un</strong>o <strong>de</strong> los mayores <strong>de</strong>safíos <strong>en</strong> <strong>un</strong><br />

sistema <strong>de</strong> com<strong>un</strong>icación. Con el propósito <strong>de</strong> verificar el<br />

f<strong>un</strong>cionami<strong>en</strong>to <strong>de</strong>l algoritmo, se realizaron simu<strong>la</strong>ciones<br />

<strong>en</strong> Mat<strong>la</strong>b, <strong>la</strong>s cuales se com<strong>para</strong>ron con los resultados <strong>de</strong><br />

simu<strong>la</strong>ción <strong>de</strong> <strong>un</strong> DPLL (Digital Phase-Looked Loop). En<br />

este caso, el algoritmo FACS (Fast Adquisition Carrier<br />

Synchronization) pres<strong>en</strong>ta a nivel <strong>de</strong> simu<strong>la</strong>ción <strong>un</strong> tiempo<br />

<strong>de</strong> adquisición <strong>de</strong> portadora m<strong>en</strong>or y permite sincronizar<br />

<strong>la</strong> frecu<strong>en</strong>cia <strong>de</strong> portadora <strong>en</strong> <strong>un</strong> rango <strong>de</strong> frecu<strong>en</strong>cias<br />

mayor que el DPLL. El diseño <strong>en</strong> hardware <strong>de</strong>l algoritmo<br />

FACS <strong>en</strong> <strong>un</strong> FPGA se realizó usando Xilinx System<br />

G<strong>en</strong>erator y usa <strong>un</strong> total <strong>de</strong> 13 bloques lógicos<br />

configurables CLBs. Con el propósito <strong>de</strong> verificar el<br />

f<strong>un</strong>cionami<strong>en</strong>to <strong>de</strong>l algoritmo <strong>en</strong> hardware, se diseñó <strong>un</strong><br />

sincronizador <strong>de</strong> portadora <strong>para</strong> BPSK (Binary Phase<br />

Shift Keying). Entonces t<strong>en</strong>i<strong>en</strong>do <strong>en</strong> cu<strong>en</strong>ta los resultados<br />

obt<strong>en</strong>idos, este nuevo algoritmo implem<strong>en</strong>tado <strong>en</strong><br />

hardware es a<strong>de</strong>cuado <strong>para</strong> sincronizar <strong>la</strong> portadora.<br />

1. INTRODUCCIÒN<br />

La técnica Radio Software (RS) propone el diseño <strong>de</strong><br />

sistemas inalámbricos configurados y contro<strong>la</strong>dos <strong>de</strong>s<strong>de</strong><br />

software sin cambiar el hardware [1]. El objetivo principal<br />

<strong>de</strong> RS es <strong>de</strong>sarrol<strong>la</strong>r radios completam<strong>en</strong>te digitales,<br />

capaces <strong>de</strong> operar <strong>en</strong> <strong>un</strong> rango <strong>de</strong> frecu<strong>en</strong>cias amplio (<strong>de</strong><br />

2MHz a 2.5GHz), con posibilidad <strong>de</strong> configurar, contro<strong>la</strong>r<br />

y actualizar <strong>de</strong>s<strong>de</strong> software <strong>la</strong>s bandas <strong>de</strong> radio frecu<strong>en</strong>cia<br />

y los modos <strong>de</strong> acceso al canal [1]. Para llevar a cabo lo<br />

anterior consi<strong>de</strong>rando <strong>la</strong> técnica RS, se emplean<br />

sofisticadas tareas <strong>de</strong> procesami<strong>en</strong>to <strong>de</strong> señales tales<br />

como: modu<strong>la</strong>ción, sincronización <strong>de</strong> portadora,<br />

<strong>de</strong>sp<strong>la</strong>zami<strong>en</strong>to <strong>en</strong> frecu<strong>en</strong>cia (Digital Down Converter,<br />

DDC y Digital Up Converter, DUC) y <strong>de</strong>tección <strong>de</strong> bits.<br />

T<strong>en</strong>i<strong>en</strong>do <strong>en</strong> cu<strong>en</strong>ta que los requerimi<strong>en</strong>tos <strong>de</strong> <strong>la</strong>s<br />

aplicaciones actuales <strong>de</strong> procesami<strong>en</strong>to digital <strong>de</strong> señales<br />

<strong>en</strong> RS son tan exig<strong>en</strong>tes <strong>en</strong> <strong>de</strong>sempeño, <strong>la</strong> tecnología <strong>de</strong><br />

FPGAs se ha convertido <strong>en</strong> <strong>un</strong>a alternativa <strong>de</strong><br />

implem<strong>en</strong>tación <strong>de</strong>bido a su flexibilidad y al alto nivel <strong>de</strong><br />

<strong>para</strong>lelismo que pue<strong>de</strong> alcanzarse.<br />

Una <strong>de</strong> <strong>la</strong>s tareas más exig<strong>en</strong>tes <strong>en</strong> <strong>un</strong> sistema <strong>de</strong><br />

com<strong>un</strong>icación, <strong>la</strong> cual requiere <strong>de</strong> muchos recursos <strong>de</strong><br />

hardware es <strong>la</strong> sincronización <strong>de</strong> portadora y <strong>de</strong> bits [2].<br />

T<strong>en</strong>i<strong>en</strong>do <strong>en</strong> cu<strong>en</strong>ta <strong>la</strong>s consi<strong>de</strong>raciones anteriores, este<br />

artículo pres<strong>en</strong>ta el diseño <strong>de</strong> <strong>un</strong> nuevo algoritmo <strong>en</strong><br />

hardware <strong>para</strong> <strong>la</strong> sincronización <strong>de</strong> portadora, el cual ti<strong>en</strong>e<br />

<strong>un</strong> bajo tiempo <strong>de</strong> adquisición <strong>de</strong> portadora y permite<br />

sincronizar <strong>la</strong> frecu<strong>en</strong>cia <strong>de</strong> portadora <strong>en</strong> <strong>un</strong> rango <strong>de</strong><br />

frecu<strong>en</strong>cias mayor con respecto a <strong>un</strong> DPLL. Con el<br />

propósito <strong>de</strong> verificar el diseño f<strong>un</strong>cional <strong>de</strong>l algoritmo, se<br />

realizaron simu<strong>la</strong>ciones <strong>en</strong> Mat<strong>la</strong>b, <strong>la</strong>s cuales se<br />

com<strong>para</strong>ron con los resultados <strong>de</strong> simu<strong>la</strong>ción <strong>de</strong> <strong>un</strong><br />

DPLL. En este caso, <strong>en</strong> <strong>la</strong>s simu<strong>la</strong>ciónes se emplea como<br />

<strong>en</strong>trada <strong>un</strong>a señal BPSK, <strong>la</strong> cual es difer<strong>en</strong>te <strong>en</strong> fase y<br />

frecu<strong>en</strong>cia con respecto a <strong>la</strong> señal <strong>de</strong>l osci<strong>la</strong>dor local <strong>de</strong>l<br />

receptor.<br />

El diseño <strong>en</strong> hardware se realizó usando <strong>la</strong> herrami<strong>en</strong>ta<br />

Xilinx System G<strong>en</strong>erator y fue sintetizado <strong>en</strong> el FPGA<br />

Spartan-3 XC3S200 usando 13 bloques lógicos<br />

configurables CLBs. Con el propósito <strong>de</strong> verificar el<br />

correcto f<strong>un</strong>cionami<strong>en</strong>to <strong>de</strong>l algoritmo implem<strong>en</strong>tado <strong>en</strong><br />

hardware, se diseñó <strong>un</strong> sincronizador <strong>de</strong> portadora <strong>para</strong><br />

BPSK.<br />

Este trabajo está organizado <strong>de</strong> <strong>la</strong> sigui<strong>en</strong>te forma.<br />

Inicialm<strong>en</strong>te <strong>la</strong> sección 2 <strong>de</strong>scribe los trabajos previos, <strong>la</strong><br />

sección 3 pres<strong>en</strong>ta alg<strong>un</strong>os aspectos básicos sobre <strong>la</strong><br />

sincronización <strong>de</strong> portadora empleando el criterio <strong>de</strong><br />

máxima probabilidad. La sección 4 pres<strong>en</strong>ta dos técnicas<br />

<strong>para</strong> diseñar el sincronizador <strong>de</strong> portadora, <strong>la</strong> primera<br />

basada <strong>en</strong> <strong>un</strong> DPLL y <strong>la</strong> seg<strong>un</strong>da basada <strong>en</strong> el algoritmo<br />

propuesto, también esta sección pres<strong>en</strong>ta <strong>la</strong>s simu<strong>la</strong>ciones<br />

<strong>en</strong> Mat<strong>la</strong>b <strong>para</strong> los diseños. La sección 5 pres<strong>en</strong>ta el<br />

diseño <strong>de</strong>l algoritmo FACS <strong>en</strong> <strong>un</strong> FPGA usando Xilinx


System G<strong>en</strong>erador. Finalm<strong>en</strong>te, <strong>la</strong> sección 6 pres<strong>en</strong>ta <strong>la</strong>s<br />

conclusiones y el trabajo futuro.<br />

2. TRABAJOS PREVIOS<br />

Des<strong>de</strong> <strong>la</strong> aparición <strong>de</strong> Radio Software se han propuesto<br />

varias alternativas <strong>para</strong> <strong>la</strong> implem<strong>en</strong>tación <strong>de</strong> radios<br />

digitales empleando circuitos programables como<br />

Microprocesadores <strong>de</strong> Propósito G<strong>en</strong>eral (G<strong>en</strong>eral<br />

Purpose Processors, GPPs), Procesadores Digitales <strong>de</strong><br />

Señales (Digital Signal Processors, DSPs), FPGAs (Field<br />

Programmable Gate Arrays) y ASICs (Application<br />

Specific Integrated Circuits).<br />

Los fabricantes <strong>de</strong> FPGAs están ori<strong>en</strong>tando esfuerzos<br />

hacia <strong>la</strong> implem<strong>en</strong>tación <strong>de</strong> RS <strong>en</strong> FPGAs. Este es el caso<br />

<strong>de</strong> Altera y Xilinx, los dos más gran<strong>de</strong>s v<strong>en</strong><strong>de</strong>dores <strong>de</strong><br />

FPGAs <strong>en</strong> el m<strong>un</strong>do, están proponi<strong>en</strong>do soluciones <strong>para</strong><br />

RS. En <strong>la</strong> Figura 1 se muestra el diagrama <strong>de</strong> <strong>un</strong>a<br />

arquitectura <strong>para</strong> RS propuesta por Altera [3]; <strong>en</strong> <strong>la</strong> cual<br />

se implem<strong>en</strong>tan el módulo <strong>de</strong> procesami<strong>en</strong>to <strong>en</strong> banda<br />

base y el módulo <strong>de</strong> procesami<strong>en</strong>to <strong>en</strong> frecu<strong>en</strong>cia<br />

intermedia. En esta arquitectura se pres<strong>en</strong>tan los bloques<br />

f<strong>un</strong>cionales <strong>para</strong> el procesami<strong>en</strong>to <strong>en</strong> frecu<strong>en</strong>cia<br />

intermedia: DUP (Digital Up-Converter), CFR (Crest<br />

Factor Reduction), DPD (Digital PreDistortion) y DDC<br />

(Digital Down-Converter); y los bloques <strong>para</strong> el<br />

procesami<strong>en</strong>to <strong>en</strong> radio frecu<strong>en</strong>cia: PA (Power Amplifier),<br />

VCO (Voltaje Controller Osci<strong>la</strong>tor) y LNA (Low Noise<br />

Amplifier).<br />

En <strong>la</strong> Figura 2 Xilinx pres<strong>en</strong>ta <strong>un</strong>a arquitectura <strong>para</strong> el<br />

procesami<strong>en</strong>to <strong>en</strong> banda base, <strong>la</strong> cual pue<strong>de</strong> ser<br />

implem<strong>en</strong>tada totalm<strong>en</strong>te <strong>en</strong> <strong>un</strong> FPGA [4].<br />

Adicionalm<strong>en</strong>te, Altera y Xilinx han <strong>de</strong>sarrol<strong>la</strong>do<br />

módulos IPs <strong>para</strong> el procesami<strong>en</strong>to <strong>de</strong> señales <strong>en</strong><br />

com<strong>un</strong>icaciones. Entre los módulos <strong>de</strong> propiedad<br />

intelectual <strong>de</strong> Altera y Xilinx se <strong>en</strong>cu<strong>en</strong>tran: transformada<br />

rápida <strong>de</strong> Fourier (FFT: Fast Fourier Transform),<br />

codificadores <strong>para</strong> <strong>la</strong> corrección <strong>de</strong> errores (Reed<br />

Solomon, Viterbi, Turbo Códigos), convertidores <strong>de</strong><br />

frecu<strong>en</strong>cia digitales (up/down converter) y modu<strong>la</strong>dores<br />

digitales.<br />

Chris Dick, Fred Harris y Michael Rice <strong>en</strong> [2], [5], [6]<br />

pres<strong>en</strong>tan el diseño <strong>de</strong>l algoritmo CORDIC (COrdinate<br />

Rotation DIgital Computer), el cual es empleado <strong>en</strong> <strong>la</strong><br />

sincronización <strong>de</strong> portadora <strong>para</strong> QAM (Quadrature<br />

Amplitu<strong>de</strong> Modu<strong>la</strong>tion) y PSK (Phase Shift Keying). En<br />

[5] se pres<strong>en</strong>tan dos diseños <strong>para</strong> sincronizar <strong>la</strong> portadora<br />

<strong>en</strong> SR <strong>para</strong> QAM usando <strong>un</strong> FPGA <strong>de</strong> Xilinx. Un diseño<br />

usa LUTs y el otro el algoritmo CORDIC. En este caso, el<br />

algoritmo CORDIC pres<strong>en</strong>ta mejor <strong>de</strong>sempeño,<br />

obt<strong>en</strong>iéndose <strong>un</strong> m<strong>en</strong>or tiempo <strong>de</strong> adquisición <strong>de</strong> <strong>la</strong><br />

portadora.<br />

En [2] se emplea el criterio <strong>de</strong> máxima probabilidad<br />

(maximum-likelihood, ML) <strong>para</strong> sincronizar <strong>la</strong> portadora<br />

<strong>para</strong> QPSK (Qadrature Phase Shift Keying) y QAM. En<br />

este caso, se usa <strong>un</strong> PLL (Phase-Looked Loop) <strong>para</strong><br />

realizar <strong>la</strong> sincronización, el cual emplea <strong>la</strong> tang<strong>en</strong>te<br />

inversa. El mo<strong>de</strong>lo fue verificado empleando Simulink,<br />

VHDL y Xilinx Core G<strong>en</strong>erator. En este artículo se<br />

pres<strong>en</strong>ta el área ocupada, mas sin embargo, no pres<strong>en</strong>ta<br />

resultados sobre <strong>la</strong> velocidad. El PLL QPSK usa<br />

aproximadam<strong>en</strong>te 1000 elem<strong>en</strong>tos lógicos <strong>de</strong> <strong>un</strong>a FPGA<br />

Virtex <strong>de</strong> Xilinx<br />

3. SINCRONIZACIÓN DE PORTADORA<br />

En <strong>un</strong> sistema <strong>de</strong> com<strong>un</strong>icación, sin <strong>la</strong> a<strong>de</strong>cuada<br />

sincronización <strong>en</strong>tre <strong>la</strong> portadora y <strong>la</strong> señal g<strong>en</strong>erada por<br />

el osci<strong>la</strong>dor local, no es posible reconocer <strong>la</strong> información<br />

<strong>en</strong>viada por el transmisor. En <strong>la</strong> <strong>de</strong>modu<strong>la</strong>ción coher<strong>en</strong>te,<br />

el receptor <strong>de</strong>be sincronizar su osci<strong>la</strong>dor local <strong>en</strong><br />

frecu<strong>en</strong>cia y fase con <strong>la</strong> portadora. Para sincronizar <strong>la</strong><br />

Proc.<br />

<strong>en</strong><br />

Banda<br />

base<br />

I<br />

Q<br />

I<br />

Q<br />

Procesami<strong>en</strong>to <strong>en</strong><br />

frecu<strong>en</strong>cia intermedia<br />

DUP CFR DPD<br />

DDC<br />

DAC<br />

ADC<br />

Procesami<strong>en</strong>to <strong>en</strong><br />

radio frecu<strong>en</strong>cia<br />

VCO<br />

Figura 1: Arquitectura <strong>para</strong> RS propuesta por Altera.<br />

PA<br />

LNA<br />

Duplexer<br />

Codificación<br />

<strong>de</strong> símbolo<br />

Decodificación<br />

<strong>de</strong> símbolo<br />

Modu<strong>la</strong>dor<br />

Detección<br />

Demodu<strong>la</strong>ción &<br />

Des-dispersión<br />

Estimación<br />

<strong>de</strong> canal<br />

Bus <strong>de</strong><br />

interface<br />

Bandabase<br />

Figura 2: Esquema <strong>de</strong> procesami<strong>en</strong>to <strong>en</strong> banda base propuesto por Xilinx.


portadora pue<strong>de</strong> emplearse <strong>un</strong>a portadora piloto o se<br />

pue<strong>de</strong> <strong>de</strong>rivar <strong>la</strong> fase <strong>de</strong> <strong>la</strong> portadora directam<strong>en</strong>te <strong>de</strong> <strong>la</strong><br />

señal modu<strong>la</strong>da [7]. El último método es el más empleado<br />

<strong>en</strong> <strong>la</strong> práctica.<br />

Asumi<strong>en</strong>do que se transmite <strong>un</strong>a portadora sin<br />

modu<strong>la</strong>r y consi<strong>de</strong>rando <strong>un</strong> canal AWGN (Additive White<br />

Gaussian Noise), <strong>la</strong> señal recibida por el receptor es dada<br />

por <strong>la</strong> ecuación 1.<br />

r(t) = Acos(2πf c +φ) + n(t) (1)<br />

don<strong>de</strong> A es <strong>la</strong> amplitud, f c es <strong>la</strong> frecu<strong>en</strong>cia <strong>de</strong> <strong>la</strong> portadora,<br />

φ es <strong>la</strong> fase <strong>de</strong>sconocida <strong>de</strong> <strong>la</strong> portadora y n(t) es ruido<br />

gausiano.<br />

Uno <strong>de</strong> los criterios <strong>para</strong> estimar el valor <strong>de</strong> <strong>la</strong> fase<br />

<strong>de</strong>sconocida φ es el criterio <strong>de</strong> máxima probabilidad<br />

(maximum-likelihood, ML), el cual permite <strong>en</strong>contrar <strong>la</strong><br />

mejor estimación <strong>de</strong> φ al maximizar <strong>la</strong> f<strong>un</strong>ción <strong>de</strong><br />

probabilidad Λ(φ). El valor que más se aproxima a <strong>la</strong> fase<br />

<strong>de</strong>sconocida está dado por <strong>la</strong> ecuación 2 [7].<br />

∫<br />

⎧ r(<br />

t)sinωctdt<br />

⎫<br />

− ⎪ To<br />

⎪<br />

φML<br />

= − tan 1 ⎨<br />

⎬<br />

(2)<br />

⎪ ∫ r(<br />

t)cosωctdt<br />

⎪<br />

⎩To<br />

⎭<br />

don<strong>de</strong> To es el tiempo <strong>de</strong> símbolo.<br />

A partir <strong>de</strong> <strong>la</strong> ecuación anterior, se pue<strong>de</strong> g<strong>en</strong>erar el<br />

diagrama <strong>de</strong> bloques <strong>de</strong> <strong>la</strong> Figura 3, el cual es empleado<br />

<strong>para</strong> estimar <strong>la</strong> fase <strong>de</strong> <strong>la</strong> portadora no modu<strong>la</strong>da [7].<br />

r(t)<br />

cos ω c t<br />

-sin ω c t<br />

r(t)cos ω c t<br />

-r(t)sin ω c t<br />

LPF<br />

LPF<br />

Y<br />

tan −1<br />

X<br />

Figura 3: Diagrama <strong>de</strong> bloques <strong>de</strong>l <strong>de</strong>tector <strong>de</strong> fase.<br />

Una <strong>de</strong> <strong>la</strong>s características <strong>de</strong> este <strong>de</strong>tector <strong>de</strong> fase, es<br />

que este pue<strong>de</strong> ser implem<strong>en</strong>tado digitalm<strong>en</strong>te,<br />

proporcionando <strong>la</strong> flexibilidad requerida <strong>en</strong> RS al permitir<br />

<strong>la</strong> <strong>de</strong>tección y sincronización <strong>de</strong> varias técnicas <strong>de</strong><br />

<strong>de</strong>modu<strong>la</strong>ción como QAM y PSK. En este caso, <strong>la</strong>s<br />

señales s<strong>en</strong>o y cos<strong>en</strong>o son g<strong>en</strong>eradas por <strong>un</strong> NCO<br />

(Numerically Controlled Oscil<strong>la</strong>tor).<br />

La salida <strong>de</strong>l <strong>de</strong>tector <strong>de</strong> fase, luego <strong>de</strong> ser procesada,<br />

se emplea <strong>para</strong> variar <strong>la</strong> frecu<strong>en</strong>cia y el ángulo <strong>de</strong>l<br />

osci<strong>la</strong>dor local y permite <strong>la</strong> sincronización <strong>de</strong> portadora.<br />

X<br />

Y<br />

φ ML<br />

Usualm<strong>en</strong>te se emplea <strong>un</strong> PLL <strong>para</strong> procesar <strong>la</strong> salida <strong>de</strong>l<br />

<strong>de</strong>tector <strong>de</strong> fase y g<strong>en</strong>erar el offset <strong>de</strong>l NCO.<br />

En <strong>la</strong> Figura 4 se pres<strong>en</strong>ta <strong>un</strong> diagrama <strong>de</strong> bloques<br />

<strong>para</strong> el sincronizador <strong>de</strong> portadora. En este caso, el<br />

diagrama propuesto es <strong>un</strong>a modificación <strong>de</strong>l diagrama <strong>de</strong><br />

bloques <strong>de</strong> <strong>un</strong> DPLL.<br />

El sincronizador está conformado por <strong>un</strong> <strong>de</strong>tector <strong>de</strong><br />

fase, <strong>un</strong> NCO y <strong>un</strong>a <strong>un</strong>idad que g<strong>en</strong>era el offset, <strong>la</strong> cual<br />

permite variar <strong>la</strong> frecu<strong>en</strong>cia o fase <strong>de</strong> <strong>la</strong> señal producida<br />

por el NCO. Si <strong>la</strong> señal r(t) es modu<strong>la</strong>da empleando varias<br />

fases, el bloque g<strong>en</strong>erador <strong>de</strong> offset <strong>de</strong>be producir <strong>la</strong><br />

difer<strong>en</strong>cia <strong>en</strong>tre φ ML y el valor <strong>de</strong> fase más próximo a los<br />

valores establecidos <strong>para</strong> <strong>la</strong> com<strong>un</strong>icación.<br />

r(t)<br />

Detector <strong>de</strong> fase<br />

-sin(ωct+φ ML )<br />

NCO<br />

LPF<br />

LPF<br />

cos(ωct+φ ML )<br />

atan<br />

φ ML<br />

Figura 4: Diagrama <strong>de</strong> bloques <strong>de</strong>l sincronizador <strong>de</strong><br />

portadora.<br />

4. DISEÑO FUNCIONAL DEL SINCRONIZADOR<br />

DE PORTADORA<br />

En esta sección se pres<strong>en</strong>tan dos técnicas <strong>para</strong> diseñar el<br />

sincronizador <strong>de</strong> portadora. La primera técnica es basada<br />

<strong>en</strong> usar <strong>un</strong> DPLL, <strong>en</strong> este caso el g<strong>en</strong>erador <strong>de</strong> offset es <strong>un</strong><br />

filtro. La seg<strong>un</strong>da técnica es basada <strong>en</strong> usar el nuevo<br />

algoritmo propuesto <strong>en</strong> este trabajo, es <strong>de</strong>cir el FACS<br />

(Fast Adquisition Carrier Synchronization), el cual g<strong>en</strong>era<br />

el offset <strong>de</strong>l NCO. En este caso, el algoritmo FACS<br />

pres<strong>en</strong>ta <strong>un</strong> m<strong>en</strong>or tiempo <strong>de</strong> adquisición <strong>de</strong> portadora y<br />

permite sincronizar <strong>la</strong> frecu<strong>en</strong>cia <strong>en</strong> <strong>un</strong> rango mayor que<br />

el DPLL.<br />

4.1. Diseño <strong>de</strong>l DPLL<br />

offset <strong>de</strong>l NCO<br />

g<strong>en</strong>.<br />

offset<br />

En <strong>la</strong> Figura 5 se pres<strong>en</strong>ta el diagrama <strong>de</strong> bloques <strong>de</strong>l<br />

DPLL. Con el propósito <strong>de</strong> simplificar el diseño <strong>de</strong>l<br />

DPLL, no se tuvieron <strong>en</strong> cu<strong>en</strong>ta los filtros <strong>de</strong>l <strong>de</strong>tector <strong>de</strong><br />

fase <strong>para</strong> calcu<strong>la</strong>r <strong>la</strong> f<strong>un</strong>ción <strong>de</strong> transfer<strong>en</strong>cia <strong>de</strong>l DPLL.


(t)<br />

<strong>de</strong>tector<br />

<strong>de</strong> fase<br />

φ ML<br />

Filtro<br />

<strong>de</strong> <strong>la</strong>zo<br />

H 1 (z)<br />

r(t)<br />

<strong>de</strong>tector<br />

<strong>de</strong> fase<br />

φ ML<br />

FACS<br />

NCO<br />

H 2 (z)<br />

offset <strong>de</strong>l NCO<br />

NCO<br />

offset <strong>de</strong>l NCO<br />

Figura 5: Diagrama <strong>de</strong> bloques <strong>de</strong>l DPLL.<br />

H 1 (z) es <strong>la</strong> f<strong>un</strong>ción <strong>de</strong> transfer<strong>en</strong>cia <strong>de</strong>l filtro <strong>de</strong> <strong>la</strong>zo y<br />

H 2 (z) es <strong>la</strong> f<strong>un</strong>ción <strong>de</strong> transfer<strong>en</strong>cia <strong>de</strong>l NCO, <strong>en</strong> este caso<br />

<strong>la</strong>s ecuaciones <strong>de</strong>l filtro y <strong>de</strong>l NCO están dadas por <strong>la</strong>s<br />

ecuaciones 3 y 4.<br />

H<br />

z<br />

β<br />

=<br />

1−αz<br />

1( )<br />

−1<br />

1<br />

(3)<br />

H 2( z)<br />

=<br />

(4)<br />

−1<br />

1−<br />

z<br />

Entonces <strong>la</strong> f<strong>un</strong>ción <strong>de</strong> transfer<strong>en</strong>cia <strong>de</strong> <strong>la</strong>zo cerrado<br />

<strong>de</strong>l DPLL está dada por <strong>la</strong> ecuación 5.<br />

H(<br />

z)<br />

=<br />

z<br />

2<br />

2<br />

β z<br />

=<br />

(1 + β)<br />

+ ( −α<br />

−1)<br />

z + α z<br />

2<br />

N(<br />

z)<br />

+ C z + C<br />

Para el diseño <strong>de</strong>l DPLL se <strong>de</strong>b<strong>en</strong> consi<strong>de</strong>rar los<br />

parámetros ω n (frecu<strong>en</strong>cia natural), ξ (factor <strong>de</strong><br />

amortiguami<strong>en</strong>to), ts (tiempo <strong>de</strong> establecimi<strong>en</strong>to) y Ts<br />

(periodo <strong>de</strong> muestreo) empleando <strong>la</strong>s ecuaciones 6 y 7.<br />

−2ξω<br />

C = e n Ts<br />

1<br />

2<br />

1<br />

(5)<br />

(6)<br />

2<br />

C2 = −2C1<br />

cos( ωn Ts 1−ξ<br />

)<br />

(7)<br />

Para <strong>la</strong> selección <strong>de</strong>l tiempo <strong>de</strong> establecimi<strong>en</strong>to ts <strong>de</strong>be<br />

t<strong>en</strong>erse <strong>en</strong> cu<strong>en</strong>ta el retardo <strong>de</strong>l <strong>de</strong>tector <strong>de</strong> fase, el cual<br />

<strong>de</strong>p<strong>en</strong><strong>de</strong> <strong>en</strong> gran parte <strong>de</strong>l número <strong>de</strong> TAPs <strong>de</strong>l filtro<br />

seleccionado. Los parámetros <strong>de</strong> diseño empleados son:<br />

• ξ=0.707<br />

• Filtro <strong>de</strong> <strong>la</strong>zo: FIR <strong>de</strong> 50 TAPs<br />

• ts = 50 Ts<br />

• Número <strong>de</strong> muestras por ciclo <strong>de</strong> <strong>la</strong> portadora: 4<br />

• Número <strong>de</strong> muestras por símbolo: 50<br />

4.2. Diseño <strong>de</strong>l algoritmo FACS<br />

En <strong>la</strong> Figura 6 se pres<strong>en</strong>ta el diagrama <strong>de</strong>l sincronizador<br />

<strong>de</strong> portadora <strong>para</strong> BPSK empleando el algoritmo FACS.<br />

El nuevo algoritmo FACS propuesto <strong>en</strong> este trabajo se<br />

pres<strong>en</strong>ta <strong>en</strong> <strong>la</strong> Figura 7.<br />

Figura 6: Diagrama <strong>de</strong> bloques <strong>de</strong>l sincronizador BPSK<br />

empleando el algoritmo FACS.<br />

if offset != 0,<br />

offset = 0;<br />

co<strong>un</strong>t = 0;<br />

<strong>en</strong>d<br />

if co<strong>un</strong>t != <strong>de</strong><strong>la</strong>y,<br />

co<strong>un</strong>t = co<strong>un</strong>t + 1;<br />

<strong>en</strong>d<br />

if (ang == ang1) && (co<strong>un</strong>t == <strong>de</strong><strong>la</strong>y),<br />

if (ang > 20°) && (ang 90°,<br />

offset = 180° - offset;<br />

<strong>en</strong>d<br />

<strong>en</strong>d<br />

<strong>en</strong>d<br />

if abs(offset) > 62°,<br />

d = d*-1;<br />

<strong>en</strong>d<br />

offset = d * offset;<br />

ang1 = ang;<br />

Figura 7: Descripción <strong>de</strong>l algoritmo FACS.<br />

Las características <strong>de</strong>l algoritmo son <strong>la</strong>s sigui<strong>en</strong>tes:<br />

• No permite que pequeñas variaciones <strong>de</strong> fase <strong>de</strong>bido a<br />

ruido activ<strong>en</strong> <strong>la</strong> f<strong>un</strong>ción <strong>de</strong>l sincronizador, solo si el<br />

valor <strong>de</strong> <strong>la</strong> fase estimada φ ML se <strong>en</strong>cu<strong>en</strong>tra <strong>en</strong> el rango<br />

<strong>en</strong>tre 20° y 160°, se g<strong>en</strong>era el valor φ ML como offset<br />

<strong>de</strong>l NCO.<br />

• Ti<strong>en</strong>e <strong>en</strong> cu<strong>en</strong>ta el retardo <strong>de</strong>l <strong>de</strong>tector <strong>de</strong> fase, es<br />

<strong>de</strong>cir, el offset <strong>de</strong>l NCO es cero hasta que se estabilice<br />

<strong>la</strong> salida <strong>de</strong>l <strong>de</strong>tector <strong>de</strong> fase, <strong>en</strong> este caso hasta que<br />

haya transcurrido <strong>un</strong> tiempo <strong>de</strong>s<strong>de</strong> <strong>la</strong> última<br />

modificación <strong>de</strong>l offset.<br />

• Pres<strong>en</strong>ta <strong>un</strong> mecanismo <strong>para</strong> <strong>de</strong>terminar cuando φ ML es<br />

estable, lo cual permite evitar lecturas erróneas cuando<br />

ocurre ruido o cuando ocurr<strong>en</strong> cambios <strong>de</strong> fase. En<br />

este caso, se asume que φ ML es estable si el valor<br />

actual es igual al valor <strong>de</strong>l periodo <strong>de</strong> muestreo<br />

anterior.


• Permite obt<strong>en</strong>er el valor <strong>de</strong>l ángulo más cercano a los<br />

valores esperados <strong>de</strong> 0° y 180°. En este caso, cuando<br />

φ ML es mayor a 90°, el valor <strong>de</strong> <strong>la</strong> fase se calcu<strong>la</strong><br />

como: fase = 180° - φ ML<br />

• Permite <strong>la</strong> sincronización <strong>en</strong>tre <strong>la</strong> frecu<strong>en</strong>cia <strong>de</strong> <strong>la</strong><br />

portadora y <strong>la</strong> frecu<strong>en</strong>cia <strong>de</strong>l osci<strong>la</strong>dor local<br />

consi<strong>de</strong>rando <strong>la</strong>s difer<strong>en</strong>cias <strong>en</strong> frecu<strong>en</strong>cia. En este<br />

caso, el valor <strong>de</strong>l offset t<strong>en</strong>drá signo positivo o<br />

negativo <strong>para</strong> po<strong>de</strong>r aum<strong>en</strong>tar o disminuir <strong>la</strong><br />

frecu<strong>en</strong>cia <strong>de</strong>l NCO, es <strong>de</strong>cir, el signo <strong>de</strong>l offset<br />

cambiará si el valor <strong>de</strong> <strong>la</strong> fase calcu<strong>la</strong>do <strong>en</strong> el p<strong>un</strong>to<br />

anterior sobrepasa cierto umbral. Debido a que el valor<br />

<strong>de</strong>l offset ti<strong>en</strong>e <strong>un</strong> rango <strong>en</strong>tre 0° y 90°, el umbral se<br />

estimó <strong>en</strong> el 77% <strong>de</strong> 90° (valor máximo), <strong>en</strong> este caso<br />

el valor <strong>de</strong>l umbral es <strong>de</strong> 61.6° ≈ 62°.<br />

Un algoritmo simple <strong>para</strong> <strong>la</strong> <strong>de</strong>tección <strong>de</strong> los bits<br />

modu<strong>la</strong>dos <strong>en</strong> BPSK consiste <strong>en</strong> establecer <strong>un</strong> umbral<br />

<strong>para</strong> <strong>la</strong> señal <strong>en</strong>tregada por el <strong>de</strong>tector <strong>de</strong> fase. Si <strong>la</strong> fase es<br />

mayor a 90° se <strong>de</strong>tecta <strong>un</strong> ‘1’ lógico y si <strong>la</strong> señal es m<strong>en</strong>or<br />

a 90° se <strong>de</strong>tecta <strong>un</strong> ‘0’ lógico.<br />

4.3. Resultados <strong>de</strong> simu<strong>la</strong>ción<br />

Con el propósito <strong>de</strong> verificar el f<strong>un</strong>cionami<strong>en</strong>to <strong>de</strong><br />

FACS y com<strong>para</strong>rlo con el DPLL, <strong>en</strong> esta sección se<br />

pres<strong>en</strong>tan los resultados <strong>de</strong> <strong>la</strong>s simu<strong>la</strong>ciones <strong>en</strong> Mat<strong>la</strong>b<br />

<strong>para</strong> <strong>la</strong> sincronización <strong>de</strong> portadora consi<strong>de</strong>rando: <strong>de</strong>sfase<br />

<strong>de</strong> <strong>la</strong> portadora, difer<strong>en</strong>cia <strong>en</strong> frecu<strong>en</strong>cias (<strong>en</strong>tre <strong>la</strong><br />

portadora y el NCO) y <strong>la</strong> pres<strong>en</strong>cia <strong>de</strong> ruido gausiano.<br />

La primera simu<strong>la</strong>ción ti<strong>en</strong>e como <strong>en</strong>trada <strong>un</strong>a señal<br />

BPSK con los sigui<strong>en</strong>tes parámetros:<br />

• Desafase <strong>de</strong> <strong>la</strong> portadora: 60°<br />

• Difer<strong>en</strong>cia <strong>en</strong> frecu<strong>en</strong>cia <strong>en</strong>tre <strong>la</strong> portadora y el<br />

osci<strong>la</strong>dor local: 0Hz.<br />

• Re<strong>la</strong>ción señal a ruido: 100dB.<br />

• Bits modu<strong>la</strong>dos: secu<strong>en</strong>cia <strong>de</strong> <strong>un</strong>os y ceros.<br />

Las señales <strong>de</strong> salida <strong>de</strong> los sincronizadores FACS y<br />

DPLL se pres<strong>en</strong>tan <strong>en</strong> <strong>la</strong> Figura 8. Como pue<strong>de</strong><br />

observarse <strong>de</strong>s<strong>de</strong> <strong>la</strong> Figura 8, el algoritmo FACS ti<strong>en</strong>e <strong>un</strong><br />

tiempo <strong>de</strong> adquisición <strong>de</strong> portadora tac m<strong>en</strong>or que el<br />

DPLL, logrando sincronizar <strong>la</strong> portadora durante el primer<br />

símbolo. En este caso, tac es <strong>de</strong> 80 muestras <strong>para</strong> FACS y<br />

<strong>de</strong> 240 muestras <strong>para</strong> el DPLL.<br />

La seg<strong>un</strong>da simu<strong>la</strong>ción ti<strong>en</strong>e como <strong>en</strong>trada <strong>un</strong>a señal<br />

BPSK con los sigui<strong>en</strong>tes parámetros:<br />

• Desafase <strong>de</strong> <strong>la</strong> portadora: 60°<br />

• Difer<strong>en</strong>cia <strong>en</strong> frecu<strong>en</strong>cia <strong>en</strong>tre <strong>la</strong> portadora y el<br />

osci<strong>la</strong>dor local: 12Hz.<br />

• Re<strong>la</strong>ción señal a ruido: 7dB.<br />

• Bits modu<strong>la</strong>dos: secu<strong>en</strong>cia <strong>de</strong> <strong>un</strong>os y ceros.<br />

Figura 8: Señales <strong>de</strong> salida <strong>para</strong> <strong>en</strong>trada BPSK con <strong>la</strong><br />

portadora <strong>de</strong>sfasada 60°.<br />

Las señales <strong>de</strong> salida <strong>de</strong> los sincronizadores FACS y<br />

DPLL se pres<strong>en</strong>tan <strong>en</strong> <strong>la</strong>s Figuras 9 y 10 respectivam<strong>en</strong>te.<br />

En <strong>la</strong> parte inferior <strong>de</strong> cada gráfica aparec<strong>en</strong> los bits<br />

<strong>de</strong>tectados a partir <strong>de</strong> <strong>la</strong> señal <strong>en</strong>tregada por los<br />

sincronizadores.<br />

Figura 9: Señal <strong>de</strong> salida <strong>de</strong>l sincronizador FACS y bits<br />

<strong>de</strong>tectados <strong>para</strong> <strong>un</strong>a <strong>en</strong>trada BPSK.<br />

Como pue<strong>de</strong> observarse <strong>de</strong>s<strong>de</strong> <strong>la</strong>s Figuras 9 y 10, el<br />

algoritmo FACS pres<strong>en</strong>ta <strong>un</strong> mejor <strong>de</strong>sempeño respecto al<br />

DPLL. En este caso, permite <strong>de</strong>tectar los bits modu<strong>la</strong>dos<br />

<strong>en</strong> BPSK, lo cual no se pue<strong>de</strong> hacer con el DPLL.


<strong>la</strong> parte fraccional., el bloque Accumu<strong>la</strong>tor acumu<strong>la</strong> el<br />

valor <strong>de</strong> <strong>la</strong> salida <strong>de</strong>l sumador. El bloque SC es <strong>un</strong>a ROM,<br />

<strong>la</strong> cual conti<strong>en</strong>e los valores <strong>de</strong> s<strong>en</strong>o y cos<strong>en</strong>o. La f<strong>un</strong>ción<br />

<strong>de</strong>l bloque Slice es seleccionar los 10 bits <strong>de</strong> <strong>la</strong> parte<br />

<strong>en</strong>tera <strong>de</strong> <strong>la</strong> salida <strong>de</strong>l acumu<strong>la</strong>dor, los cuales se usan <strong>para</strong><br />

direccionar <strong>la</strong> ROM. Las salidas cos y sin son los valores<br />

<strong>de</strong> cos<strong>en</strong>o y s<strong>en</strong>o <strong>de</strong>l ángulo θ <strong>de</strong> acuerdo a <strong>la</strong> sigui<strong>en</strong>te<br />

ecuación:<br />

Figura 10: Señal <strong>de</strong> salida <strong>de</strong>l sincronizador DPLL y<br />

bits <strong>de</strong>tectados <strong>para</strong> <strong>un</strong>a <strong>en</strong>trada BPSK.<br />

5. DISEÑO DEL ALGORITMO FACS<br />

Para diseñar <strong>en</strong> hardware el sincronizador <strong>de</strong> portadora<br />

usando el algoritmo FACS es necesario diseñar tres<br />

bloques f<strong>un</strong>cionales (ver Figura 6): NCO, <strong>de</strong>tector <strong>de</strong> fase<br />

y g<strong>en</strong>erador <strong>de</strong> offset empleando FACS.<br />

El diagrama <strong>de</strong> bloques <strong>de</strong>l NCO diseñado se pres<strong>en</strong>ta<br />

<strong>en</strong> <strong>la</strong> Figura 11.<br />

Figura 11: Diagrama <strong>de</strong> bloques <strong>de</strong>l NCO.<br />

La <strong>en</strong>trada the, es <strong>un</strong>a constante que especifica <strong>la</strong><br />

frecu<strong>en</strong>cia <strong>de</strong>l NCO y <strong>la</strong> <strong>en</strong>trada off, permite variar <strong>la</strong> fase<br />

y/o frecu<strong>en</strong>cia <strong>de</strong>l NCO. La <strong>en</strong>trada offsig <strong>de</strong>termina <strong>la</strong><br />

operación suma/resta <strong>de</strong> <strong>la</strong>s <strong>en</strong>tradas the y off, <strong>la</strong> cual es<br />

realizada por el bloque AddSub1. Tanto <strong>la</strong> señal the y off<br />

ti<strong>en</strong><strong>en</strong> 10 bits <strong>para</strong> repres<strong>en</strong>tar <strong>la</strong> parte <strong>en</strong>tera y 2 bits <strong>para</strong><br />

θ = ( the ± off ) 2π/1024 radianes (8)<br />

Para el diseño <strong>de</strong>l <strong>de</strong>tector <strong>de</strong> fase se emplearon los<br />

sigui<strong>en</strong>tes parámetros:<br />

• Muestras por ciclo <strong>de</strong> portadora: 8<br />

• Muestras por símbolo: 90<br />

• Filtro FIR pasa bajas <strong>de</strong> 50 TAPs<br />

• Bits modu<strong>la</strong>dos: secu<strong>en</strong>cia <strong>de</strong> <strong>un</strong>os y ceros.<br />

El diagrama <strong>de</strong> bloques <strong>de</strong>l <strong>de</strong>tector <strong>de</strong> fase con el<br />

NCO se pres<strong>en</strong>ta <strong>en</strong> <strong>la</strong> Figura 12. La <strong>en</strong>trada mod, es <strong>la</strong><br />

señal modu<strong>la</strong>da y <strong>la</strong>s <strong>en</strong>tradas the, off y offsig van<br />

directam<strong>en</strong>te al NCO. El cálculo <strong>de</strong> <strong>la</strong> tang<strong>en</strong>te inversa se<br />

realizó empleando el algoritmo CORDIC. Las salidas <strong>de</strong>l<br />

<strong>de</strong>tector <strong>de</strong> fase son:<br />

• fase: valor <strong>de</strong> <strong>la</strong> fase <strong>de</strong> <strong>la</strong> señal modu<strong>la</strong>da<br />

• mag: magnitud esca<strong>la</strong>da <strong>de</strong> <strong>la</strong> señal modu<strong>la</strong>da<br />

El diagrama <strong>de</strong> bloques <strong>de</strong>l algoritmo FACS se<br />

pres<strong>en</strong>ta <strong>en</strong> <strong>la</strong> Figura 13. En este caso FACS ti<strong>en</strong>e como<br />

señal <strong>de</strong> <strong>en</strong>trada fase, que es <strong>un</strong>a señal <strong>de</strong> salida <strong>de</strong>l<br />

<strong>de</strong>tector <strong>de</strong> fase. Las señales off y offsig son señales <strong>de</strong><br />

<strong>en</strong>trada al NCO.<br />

El algoritmo FACS fue implem<strong>en</strong>tado <strong>en</strong> <strong>un</strong> FPGA<br />

Spartan-3 XC3S200 empleando System G<strong>en</strong>erador. En<br />

este caso, el diseño usa:<br />

• Número <strong>de</strong> CLBs (bloques lógicos configurables): 13<br />

• Número <strong>de</strong> flip-flops: 18<br />

• Número <strong>de</strong> LUTs: 80<br />

Con el propósito <strong>de</strong> verificar el diseño <strong>de</strong>l<br />

sincronizador usando el algoritmo FACS se realizaron 2<br />

simu<strong>la</strong>ciones.<br />

Figura 12: Diagrama <strong>de</strong> bloques <strong>de</strong>l <strong>de</strong>tector <strong>de</strong> fase


Figura 13: Diagrama <strong>de</strong>l algoritmo FACS<br />

grados<br />

Salida φ ML <strong>de</strong>l <strong>de</strong>tector <strong>de</strong> fase<br />

tes<br />

grados<br />

Salida offset <strong>de</strong>l algoritmo FACS<br />

muestras<br />

Figura 14: Resultados <strong>de</strong> simu<strong>la</strong>ción <strong>para</strong> el <strong>de</strong>tector <strong>de</strong> fase y FACS<br />

La primera simu<strong>la</strong>ción ti<strong>en</strong>e como <strong>en</strong>trada <strong>un</strong>a señal<br />

BPSK con los sigui<strong>en</strong>tes parámetros:<br />

• Desfase <strong>de</strong> <strong>la</strong> portadora: 60°<br />

• Difer<strong>en</strong>cia <strong>en</strong> frecu<strong>en</strong>cia <strong>en</strong>tre <strong>la</strong> portadora y el<br />

osci<strong>la</strong>dor local: 0Hz.<br />

• Bits modu<strong>la</strong>dos: secu<strong>en</strong>cia <strong>de</strong> <strong>un</strong>os y ceros.<br />

La salida <strong>de</strong>l <strong>de</strong>tector <strong>de</strong> fase y <strong>la</strong> salida <strong>de</strong>l algoritmo<br />

FACS se pres<strong>en</strong>ta <strong>en</strong> <strong>la</strong> Figura 14. Des<strong>de</strong> <strong>la</strong> Figura 14 se<br />

pue<strong>de</strong> observar que el sincronizador FACS permite lograr<br />

<strong>un</strong> <strong>de</strong>sfase <strong>de</strong> 0° <strong>en</strong>tre <strong>la</strong> portadora y <strong>la</strong> señal <strong>de</strong>l NCO.<br />

Pue<strong>de</strong> observarse también que el <strong>de</strong>tector <strong>de</strong> fase ti<strong>en</strong>e <strong>un</strong><br />

retardo <strong>de</strong> 60 muestras aproximadam<strong>en</strong>te <strong>para</strong> respon<strong>de</strong>r a<br />

los cambios <strong>de</strong> fase <strong>de</strong>l NCO.


grados<br />

Salida <strong>de</strong>l <strong>de</strong>tector <strong>de</strong> fase<br />

grados<br />

Salida off <strong>de</strong>l bloque FACS<br />

(1) (2)<br />

Salida offsig <strong>de</strong>l bloque FACS<br />

cambio <strong>de</strong> signo <strong>de</strong>l offset<br />

muestras<br />

Figura 15: Resultados <strong>de</strong> simu<strong>la</strong>ción <strong>para</strong> el <strong>de</strong>tector <strong>de</strong> fase y FACS<br />

La seg<strong>un</strong>da simu<strong>la</strong>ción ti<strong>en</strong>e como <strong>en</strong>trada <strong>un</strong>a señal<br />

BPSK con los sigui<strong>en</strong>tes parámetros:<br />

• Desfase <strong>de</strong> <strong>la</strong> portadora: 60°<br />

• Difer<strong>en</strong>cia <strong>en</strong> frecu<strong>en</strong>cia <strong>en</strong>tre <strong>la</strong> portadora y el<br />

osci<strong>la</strong>dor local: 12Hz.<br />

• Bits modu<strong>la</strong>dos: secu<strong>en</strong>cia <strong>de</strong> <strong>un</strong>os y ceros.<br />

La salida <strong>de</strong>l <strong>de</strong>tector <strong>de</strong> fase y <strong>la</strong>s salidas off y offsig<br />

<strong>de</strong>l algoritmo FACS se pres<strong>en</strong>tan <strong>en</strong> <strong>la</strong> Figura 15. Des<strong>de</strong><br />

<strong>la</strong> Figura 15 pue<strong>de</strong> observarse como el algoritmo FACS<br />

manti<strong>en</strong>e <strong>un</strong>a salida periódica <strong>para</strong> seguir <strong>la</strong> portadora a<br />

pesar <strong>de</strong> <strong>la</strong> difer<strong>en</strong>cia <strong>en</strong> frecu<strong>en</strong>cia, obt<strong>en</strong>iéndose <strong>un</strong><br />

resultado simi<strong>la</strong>r a <strong>la</strong> simu<strong>la</strong>ción realizada con Mat<strong>la</strong>b.<br />

A<strong>de</strong>más, pue<strong>de</strong> observarse el cambio <strong>de</strong> signo <strong>de</strong>l offset<br />

cuando el valor <strong>de</strong>l <strong>de</strong>sfase es lo sufici<strong>en</strong>tem<strong>en</strong>te gran<strong>de</strong><br />

(mayor a 62°), permiti<strong>en</strong>do <strong>un</strong> a<strong>de</strong>cuado seguimi<strong>en</strong>to <strong>de</strong> <strong>la</strong><br />

portadora. Como se pue<strong>de</strong> observar <strong>de</strong>s<strong>de</strong> <strong>la</strong> Figura 15, <strong>la</strong><br />

señal off contro<strong>la</strong> a<strong>de</strong>cuadam<strong>en</strong>te <strong>la</strong> fase <strong>de</strong>l NCO, por<br />

ejemplo, <strong>en</strong> el instante seña<strong>la</strong>do como (1) <strong>en</strong> <strong>la</strong> gráfica, el<br />

algoritmo FACS le indica al NCO que <strong>de</strong>be realizar <strong>un</strong><br />

cambio <strong>de</strong> fase <strong>de</strong> 50°; <strong>en</strong> el instante seña<strong>la</strong>do como (2),<br />

<strong>de</strong>bido a que el offset es mayor a 62°, ocurre <strong>un</strong> cambio<br />

<strong>de</strong> signo <strong>de</strong>l offset.<br />

6. CONCLUSIONES Y TRABAJO FUTURO<br />

En este artículo se pres<strong>en</strong>ta el diseño <strong>en</strong> hardware <strong>de</strong> <strong>un</strong><br />

nuevo algoritmo usado <strong>para</strong> <strong>la</strong> sincronización <strong>de</strong><br />

portadora <strong>en</strong> BPSK. La verificación f<strong>un</strong>cional <strong>de</strong>l<br />

algoritmo FACS se llevó a cabo a nivel <strong>de</strong> simu<strong>la</strong>ción<br />

usando Mat<strong>la</strong>b, es <strong>de</strong>cir, se realizaron <strong>la</strong>s com<strong>para</strong>ciones<br />

<strong>en</strong>tre <strong>la</strong>s respectivas simu<strong>la</strong>ciones <strong>de</strong> f<strong>un</strong>cionami<strong>en</strong>to <strong>de</strong>l<br />

algoritmo FACS y el DPLL. En este caso, el algoritmo<br />

FACS pres<strong>en</strong>tó <strong>un</strong> tiempo <strong>de</strong> adquisición <strong>de</strong> portadora<br />

m<strong>en</strong>or y permite <strong>la</strong> sincronización <strong>de</strong> <strong>la</strong> frecu<strong>en</strong>cia <strong>de</strong> <strong>la</strong><br />

portadora <strong>en</strong> <strong>un</strong> rango <strong>de</strong> frecu<strong>en</strong>cias mayor que el DPLL.<br />

El diseño <strong>de</strong>l algoritmo FACS se implem<strong>en</strong>to <strong>en</strong> <strong>un</strong><br />

FPGA Spartan-3 XC3S200 empleando System G<strong>en</strong>erator.<br />

En este caso el diseño usa 13 CLBs, lo cual es muy<br />

a<strong>de</strong>cuado <strong>de</strong>s<strong>de</strong> el p<strong>un</strong>to <strong>de</strong> vista <strong>de</strong> área. Los resultados<br />

obt<strong>en</strong>idos permit<strong>en</strong> concluir que el diseño propuesto<br />

pue<strong>de</strong> ser empleado como <strong>un</strong> “core” <strong>para</strong> aplicaciones <strong>de</strong><br />

<strong>de</strong> alto <strong>de</strong>sempeño <strong>en</strong> Radio Software.<br />

El trabajo futuro será ori<strong>en</strong>tado hacia el diseño <strong>de</strong><br />

“cores” <strong>para</strong> Radio Software con el propósito <strong>de</strong> diseñar<br />

<strong>un</strong> procesador <strong>de</strong> banda base y frecu<strong>en</strong>cia intermedia con<br />

características <strong>de</strong> muy alto <strong>de</strong>sempeño.<br />

7. REFERENCIAS<br />

[1] J. Mito<strong>la</strong>, Software Radio Architecture,.John Wiley & Sons,<br />

Inc, 2000.<br />

[2] Michael Rice, Chris Dick, y fred harris, "Maximum<br />

Likelihood Carrier Phase Synchronization in FPGA-Based<br />

Software Defined Radios," Proceedings of the International<br />

Confer<strong>en</strong>ce on Acoustics, Speech, and Signal Processing,<br />

May. 2001.<br />

[3] Software Defined Radio. Altera Corporation. 2005.<br />

http://www.altera.com/solutions/comm/wireless/software/sdr<br />

/wir-sdr.html.<br />

[4] Wireless Comm<strong>un</strong>ication: Baseband. Xilinx Inc. 2005.<br />

http://www.xilinx.com/esp/wireless/baseband/in<strong>de</strong>x.htm.<br />

[5] Chris Dick, Fred Harris y Michael Rice, “FPGA<br />

Implem<strong>en</strong>tation of carrier Synchronization for QAM<br />

receivers,” Journal of VLSI Signal Processing Systems,<br />

Volum<strong>en</strong> 36, pp. 57-71, Ene. 2004.<br />

[6] F.J. Harris y C.H. Dick, “On Structure and Implem<strong>en</strong>tation<br />

of Algorithms for Carrier and Symbol Synchronization in


Software Defined Radios,” EUSIPCO-2000, “Effici<strong>en</strong>t<br />

Algorithms for <strong>Hardware</strong> Implem<strong>en</strong>tation of DSP Systems,”<br />

Tempere, Fin<strong>la</strong>nd, Sept. 2000.<br />

[7] John Proakis, Digital Comm<strong>un</strong>icactions 4ed, Mc Graw Hill.<br />

2000.<br />

[8] Sistemas <strong>de</strong> Control Automático. KUO, B<strong>en</strong>jamin. Pr<strong>en</strong>tice<br />

Hall. 1996.<br />

[9] Introduction to phase-locked loop system mo<strong>de</strong>ling. LI, W<strong>en</strong><br />

y MEINERS, Jason. Texas Instrum<strong>en</strong>ts: Analog Application<br />

Journal. 2000.<br />

[10] Marvin Frerking, Digital Signal Processing in<br />

Comm<strong>un</strong>ication Systems, Kluwer Aca<strong>de</strong>mic Publishers.<br />

2003.<br />

[11] Xilinx Inc., System G<strong>en</strong>erator for DSP, http://www.xilinx.<br />

com/xlnx/xebiz/<strong>de</strong>signResources/ip_product_<strong>de</strong>tails.jsp?k<br />

ey=dr_dt_system_g<strong>en</strong>erator<br />

[12] Xilinx Core G<strong>en</strong>erator,<br />

http://www.xilinx.com/products/logicore/coreg<strong>en</strong>/in<strong>de</strong>x.ht<br />

m

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!