La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

(Numerically Controlled Oscillator)

Presentaciones similares


Presentación del tema: "(Numerically Controlled Oscillator)"— Transcripción de la presentación:

1 (Numerically Controlled Oscillator)
NCO (Numerically Controlled Oscillator)

2 Qué es un NCO Aplicaciones
NCO: Oscilador controlado numéricamente Qué es un NCO Es un sistema electrónico digital utilizado para sintetizar señales de frecuencias variadas, a partir de una base de tiempo Aplicaciones - Conversores digitales up/down - PLLs digitales - Sistemas de radar - Moduladores/Demoduladores - Drivers para transmisiones ópticas o acústicas - Software-defined radios (SDR) Sistemas Digitales - UBA

3 Se elimina la necesidad del ajuste de los componentes
NCO: Oscilador controlado numéricamente Ventajas Se elimina la necesidad del ajuste de los componentes analógicos, debido al paso del tiempo La interfaz digital facilita el control del sistema de manera remota Sistemas Digitales - UBA

4 Diagrama en bloques básico
NCO: Oscilador controlado numéricamente Diagrama en bloques básico RCF + RF CFA Registro de Control de Frecuencia Sumador (Módulo N) Acumulador de fase Registro de Fase Convertidor Fase-Amplitud Lookup table Sistemas Digitales - UBA

5 - Se comienza con el Registro de Fase inicializado en cero
NCO: Oscilador controlado numéricamente Funcionamiento - Se comienza con el Registro de Fase inicializado en cero - En el Registro de Control de Frecuencia se graba un número I - Con el primer ciclo de reloj el Registro de Fase toma el valor I - Con los siguientes ciclos de reloj el RF se incrementa en I, tomando los valores 2I, 3I, …, y así sucesivamente, hasta el desborde del contador. 001 101 110 001 100 101 001 000 001 011 100 001 111 000 001 110 111 001 000 001 010 011 001 010 RCF + RF CFA Sistemas Digitales - UBA

6 La salida del registro de Fase se utiliza para acceder a la
NCO: Oscilador controlado numéricamente Funcionamiento La salida del registro de Fase se utiliza para acceder a la memoria que contiene las muestras de la señal El período de la señal de salida es igual al tiempo que le lleva al contador alcanzar su cuenta máxima. En este tiempo se tienen que obtener todas las muestras de la señal, guardadas en la memoria - De lo anterior se desprende que si el incremento de fase aumenta, el período de la señal de salida disminuye. Por Ej.: si el incremento es 1 se necesitan 2N ciclos de reloj para que el contador desborde, y si es 2 se necesitan 2N/2 Sistemas Digitales - UBA

7 Funcionamiento I1 Salida de la LUT Acumulador I2 = 2.I1 Salida de
NCO: Oscilador controlado numéricamente Funcionamiento I1 Salida de la LUT Acumulador I2 = 2.I1 Salida de la LUT Acumulador Sistemas Digitales - UBA

8 De lo anterior se desprende:
NCO: Oscilador controlado numéricamente Funcionamiento De lo anterior se desprende: [seg] I N 2 . Tclock To = (Período de la señal de salida) [Hz] N 2 I . Fclock Fo = (Frecuencia de la señal de salida) - A su vez, la memoria posee las muestras de un ciclo de una señal senoidal. El salto de fase entre cada posición es: N 2 360 = d Sistemas Digitales - UBA

9 - El Registro de Fase es de N bits, lo que le permite acceder
NCO: Oscilador controlado numéricamente Funcionamiento - El Registro de Fase es de N bits, lo que le permite acceder a cualquier dirección de la memoria. El valor a la entrada del Registro de Control de Frecuencia, que se suma al valor del Registro de Fase en cada ciclo de reloj representa un incremento de fase de: N 2 .I 360 Δ = F - Finalmente la resolución en frecuencia se obtiene para I=1: [Hz] N 2 Fclock Tclock.2 1 Δf = Sistemas Digitales - UBA

10 N debe ser un número entero, por lo tanto:
NCO: Oscilador controlado numéricamente Ejemplo de diseño Fo (Frecuencia de salida) = 500 Hz Df = Resolución en frecuencia <= 0,05 Hz Ts = Período de muestreo = 1/8000 seg 1. Cálculo del número de bits necesarios del acumulador N debe ser un número entero, por lo tanto: N = 18 Sistemas Digitales - UBA

11 Fo (Frecuencia de salida) = 500 Hz
NCO: Oscilador controlado numéricamente Ejemplo de diseño Fo (Frecuencia de salida) = 500 Hz Df = Resolución en frecuencia <= 0,05 Hz Ts = Período de muestreo = 1/8000 seg 2. Recálculo de la resolución en frecuencia Df = 0,0305 Hz Sistemas Digitales - UBA

12 Fo (Frecuencia de salida) = 500 Hz
NCO: Oscilador controlado numéricamente Ejemplo de diseño Fo (Frecuencia de salida) = 500 Hz Df = Resolución en frecuencia <= 0,05 Hz Ts = Período de muestreo = 1/8000 seg 3. Cálculo del incremento de fase I = 16384 Sistemas Digitales - UBA

13 Lookup table (memoria)
NCO: Oscilador controlado numéricamente Arquitectura Lookup table (memoria) LUT cos Incremento de fase DF N FFD + FFD 2N-1 sen clk La LUT tiene 2N entradas (siendo N el número de bits de las direcciones generadas por el acumulador) La precisión de los datos de salida de la LUT es independiente de N Sistemas Digitales - UBA

14 Lookup table (memoria)
NCO: Oscilador controlado numéricamente Arquitectura Lookup table (memoria) La LUT puede ser cargada con: - Todos los puntos de la senoide (ciclo completo) - La mitad de los puntos de la senoide (medio ciclo) - Un cuarto de los puntos de una senoide (cuarto ciclo) LUT 2N-1 Sistemas Digitales - UBA

15 Fo (Frecuencia de salida requerida) = 5MHz
NCO: Oscilador controlado numéricamente Ejemplo 2 Fo (Frecuencia de salida requerida) = 5MHz Cantidad de valores en memoria = 256 Fs = Frecuencia de muestreo = 20MHz Fs . I Fo 5MHz Fo = [Hz] I = . 2N = . 256 = 64 2N Fs 20MHz Sistemas Digitales - UBA

16 Fo (Frecuencia de salida requerida) = 4.8MHz
NCO: Oscilador controlado numéricamente Ejemplo 3 Fo (Frecuencia de salida requerida) = 4.8MHz Cantidad de valores en memoria = 256 Fs = Frecuencia de muestreo = 20MHz [Hz] 2N I . Fs Fo = 20MHz 256 4,8MHz 61,44 256 round(I) . 20MHz Fo = 4,76MHz ≠ 4,8MHz Sistemas Digitales - UBA

17 Arquitectura (uso de punto fijo)
NCO: Oscilador controlado numéricamente Arquitectura (uso de punto fijo) Diagrama general Lookup table Incremento de fase DF Qm,r Qm,r Qm,r Qm,r Qm FFD + FFD Q() clk El incremento de fase está representado en punto fijo (Qm,r) El acumulador opera con punto fijo -> aumenta su complejidad pero se logra un mejor control sobre la frecuencia deseada Para acceder a la LUT se descarta la parte fraccionaria Si se aumenta la cantidad de bits r se aumenta la resolución en frecuencia Sistemas Digitales - UBA

18 Ejemplo 3 (Continuación)
NCO: Oscilador controlado numéricamente Ejemplo 3 (Continuación) Retomamos el ejemplo 3 pero esta vez utilizamos 4 bits fraccionales Con este nuevo formato el incremento puede ser representado como: I = 61,4375d = ,0111b 20MHz . 61,4375 Fo = = 4,799MHz 256 La frecuencia resultante es mucho más cercana a la requerida Sistemas Digitales - UBA

19 Mínimo incremento (I) posible
NCO: Oscilador controlado numéricamente Mínimo incremento (I) posible 1 Imin = 2r Resolución de frecuencia para el Imin 20MHz . Imin DFo = = 78125Hz 256 Sistemas Digitales - UBA

20 Resolución en frecuencia [Hz]
NCO: Oscilador controlado numéricamente Resolución de frecuencia obtenible para 8 bits y una frecuencia de muestreo de 20MHz Bits p/parte fracc Incremento mínimo Resolución en frecuencia [Hz] 1 78.125 0,5 39.062,5 2 0,25 19.531,25 3 0,125 9.765,625 4 0,0625 4.882,8125 5 0,03125 2.441,40625 10 0, 76, 15 0, 2, 20 0, 0, Sistemas Digitales - UBA

21 Acceso a la memoria de valores de la señal (LUT)
NCO: Oscilador controlado numéricamente Acceso a la memoria de valores de la señal (LUT) Sólo se utiliza la parte entera del acumulador (truncado) Este truncamiento atenta contra la pureza espectral de la señal generada Las muestras almacenadas en la LUT también presentan un grado de cuantización en amplitud. Esto también degrada la señal generada. Sistemas Digitales - UBA

22 Componentes espúreas debido al truncamiento de fase
NCO: Oscilador controlado numéricamente Componentes espúreas debido al truncamiento de fase Sistemas Digitales - UBA

23 Componentes espúreas debido a la cuantización de amplitud
NCO: Oscilador controlado numéricamente Componentes espúreas debido a la cuantización de amplitud Sistemas Digitales - UBA

24 Componentes espúreas debido a la cuantización de
NCO: Oscilador controlado numéricamente Componentes espúreas debido a la cuantización de amplitud y al truncamiento de fase Sistemas Digitales - UBA

25 Rango dinámico libre de espúreos (SFDR)
NCO: Oscilador controlado numéricamente Rango dinámico libre de espúreos (SFDR) SFDR Sistemas Digitales - UBA

26 influencia sobre el rendimiento del NCO.
NCO: Oscilador controlado numéricamente Recapitulando … Tanto los bits representantes de la parte entera del acumulador, como los representantes de la parte fraccionaria y la resolución de la LUT tienen influencia sobre el rendimiento del NCO. Si se aumenta el número de bits de la parte entera se tiene: - Una LUT más grande - Un efecto menor debido al truncamiento de la fase Si se aumenta el número de bits de la parte fraccionaria se tiene: - Un salto incremental más pequeño y una mejor resolución en frec. - Un acumulador más caro Si se aumenta la resolución de la salida de la LUT se tiene: - Un efecto menor debido a la cuantización de las muestras de la señal. - Mayores requerimientos para la LUT Sistemas Digitales - UBA

27 Arquitectura (uso de punto fijo)
NCO: Oscilador controlado numéricamente Arquitectura (uso de punto fijo) Agregado de dither Lookup table Incremento de fase DF Qm,r Qm,r Qm,r Qm,r Qm,r Qm FFD + FFD + Q() clk Generador de dither Sistemas Digitales - UBA

28 Arquitectura (uso de punto fijo)
NCO: Oscilador controlado numéricamente Arquitectura (uso de punto fijo) Agregado de dither (poca cantidad de bits) SFDR = 73dB Sistemas Digitales - UBA

29 Arquitectura (uso de punto fijo)
NCO: Oscilador controlado numéricamente Arquitectura (uso de punto fijo) Agregado de dither (excesiva cantidad de bits) SFDR = 81dB Sistemas Digitales - UBA

30 Arquitectura (uso de punto fijo)
NCO: Oscilador controlado numéricamente Arquitectura (uso de punto fijo) Agregado de dither (cantidad correcta de bits) SFDR = 105dB Sistemas Digitales - UBA

31 Código VHDL Estructura
NCO: Oscilador controlado numéricamente Código VHDL Estructura Incremento de fase DF sin_o acum_fase sin_cos cos_o clk Sistemas Digitales - UBA

32 Ejemplo de implementación en VHDL y simulación
NCO: Oscilador controlado numéricamente Ejemplo de implementación en VHDL y simulación entity Acum_Fase is generic( P: natural := 3; -- incremento Q: natural := 14; -- módulo N: natural := cantidad de bits ); port( clk: in std_logic; acum_reg: out std_logic_vector(N-1 downto 0) end entity Acum_Fase; Sistemas Digitales - UBA

33 Ejemplo de implementación en VHDL y simulación
NCO: Oscilador controlado numéricamente Ejemplo de implementación en VHDL y simulación architecture BEH of Acum_Fase is signal mod_reg: unsigned(N-1 downto 0) := (others => '0'); signal rem_nc: unsigned(N-1 downto 0) := (others => '0'); signal term_add: unsigned(N-1 downto 0) := (others => '0'); begin rem_nc <= to_unsigned(Q,N) - mod_reg; term_add <= to_unsigned(P,N); Modular_Addition: process(clk) is if rising_edge(clk) then if (rem_nc<=to_unsigned(P,N)) then mod_reg <= to_unsigned(P,N) - rem_nc; else mod_reg <= mod_reg + term_add; end if; end process Modular_Addition; acum_reg <= std_logic_vector(mod_reg); end architecture BEH; Sistemas Digitales - UBA

34 NCO: Oscilador controlado numéricamente
FIN Sistemas Digitales - UBA


Descargar ppt "(Numerically Controlled Oscillator)"

Presentaciones similares


Anuncios Google