| 1 | = DISEÑO DE FILTROS EN EL AD6620 = |
| 2 | |
| 3 | La consideración del diseño de filtros se basa en diseñar un filtro match al pulso cuadrado de transmisión y escoger el correcto escalamiento en cada etapa para obtener el máximo rango dinámico. |
| 4 | |
| 5 | El AD6620 tiene un NCO y 3 etapas de filtros configurable: CIC2, CIC5 y un FIR de 128 taps de 20 bits cada uno, todos programables. A continuación se detalla la receta del diseño, para más información ver el datasheet del AD6620 |
| 6 | http://www.analog.com/static/imported-files/data_sheets/AD6620.pdf |
| 7 | |
| 8 | == NCO == |
| 9 | |
| 10 | El AD6620 tiene un NCO de 32 bits. Para obtener su valor se considera el Reloj de entrada y la frecuencia a la que se quiere sintonizar. Su fórmula es: |
| 11 | |
| 12 | Fnco = Fsint * 2^32^ / Fclock |
| 13 | |
| 14 | Para el caso de los sistemas de Jicamarca que trabajan a 60MHz el valor se calcula de la sgte manera: |
| 15 | |
| 16 | Fnco_jicamarca = 10.08 * 2^32^ / 60 = 721554505 |
| 17 | |
| 18 | Este valor debe ingresarse en el registro 303 |
| 19 | |
| 20 | == CIC2 == |
| 21 | Este filtro debe tener al menos una decimación de 2. Debe ser ingresado en el registro 306 del filtro. |
| 22 | |
| 23 | Para calcular el escalamiento luego de escoger la decimación se sigue la siguiente fórmula |
| 24 | |
| 25 | S_cic2 = **ceil( **Log2 ( M_cic2^2^ )**)** - 2 |
| 26 | |
| 27 | Este valor debe ser ingresado en el registro 305 del filtro |
| 28 | |
| 29 | OL_cic2 = M_cic2^2^/2^S_cic2+2^ |
| 30 | |
| 31 | El valor de OL_cic2 debe estar entre 0.5 y 1 y es necesario para obtener el escalamiento en en el CIC5. |
| 32 | |
| 33 | |
| 34 | == CIC5 == |
| 35 | Para calcular el escalamiento luego de escoger la decimación se sigue la siguiente fórmula. Debe ser ingresado en el registro 308 del filtro |
| 36 | |
| 37 | S_cic5 = **ceil( **Log2 ( M_cic5^5^ * OL_cic2 )**)** - 5 |
| 38 | |
| 39 | Este valor debe ser ingresado en el registro 307 del filtro. |
| 40 | |
| 41 | OL_cic5 = M_cic2^5^/2^S_cic5+5^ |
| 42 | |
| 43 | El valor de OL_cic5 debe estar entre 0.5 y 1 y es necesario para obtener el escalamiento en en el Filtro FIR. |
| 44 | |
| 45 | |
| 46 | == FIR == |
| 47 | La decimiación debe ser ingresada en el registro 30A del filtro. La consideración a este filtro es que la cantidad de taps sea igual a la decimación, el valor de cada TAP se calcula de la siguiente manera: |
| 48 | |
| 49 | TAP = **ceil(** 2^19^ - 1/ Dec_FIR * OL_cic5 **)** |
| 50 | |
| 51 | El escalamiento por defecto del FIR debe ser 3 y debe ser ingresado en el registro 309 del filtro. |
| 52 | |
| 53 | == Ejemplo == |
| 54 | |
| 55 | Se presenta un filtro match de una decimación de 60, siguiendo las consideraciones explicadas. |
| 56 | |
| 57 | Click para descargar el filtro |
| 58 | |