Problema de recuperación de CPLD de Xilinx

0

Estoy tratando de usar un Xilinx xc9536xl para decodificar una señal modulada actual, pero tengo un problema con las flexiones en el pin. Por lo que he recopilado, el CPLD tiene pull-ups del orden de 10s de k ohms y no se pueden apagar, lo cual no anticipé.

El problema es que mi circuito usa una resistencia de 500k para generar el nivel de voltaje deseado, que no es lo suficientemente fuerte como para bajar la entrada de CPLD.

Tengo un PMOS actualmente disponible en el diseño que podría usar y adjunto una modificación propuesta (en rojo) que intenté implementar sin éxito. Básicamente, estoy intentando traducir los pulsos de 6V en la salida del opamp en pulsos de 3V limpios en la entrada del CPLD. ¿Alguien tiene alguna otra sugerencia para resolver este problema?

Editar: Para resolver el problema inicialmente, alimenté la salida del opamp directamente al CPLD, sin embargo, esto oscila de 0 a 6 V, que aunque es tolerable no es ideal, y no es un pulso muy limpio.

Después de implementar mis cambios sugeridos, la salida de las oscilaciones del opamp solo llega a 2V en la mayoría de los pulsos (3V en algunos) y me faltan los pulsos en la entrada de CPLD.

Edición n. ° 2: modifiqué el circuito para eliminar la retroalimentación opamp y ahora obtengo buenos impulsos limpios de 6V en G1 (0 ~ 6V) y el inverso en G2 (0 ~ 3V). El problema es que sin el bucle de retroalimentación veo un comportamiento extraño al final de los pulsos que no estaba viendo antes.

Además, si no se requiere el bucle de retroalimentación como lo he encontrado, ¿tendría más sentido conectar D1 a 3V3, reemplazar los 500k con un fuerte tirón hacia abajo y eliminar el CPLD de S1? ¿Debo poner una resistencia de serie en G1?

Editar # 3: modificó el circuito para usar NMOS para controlar CPLD directamente. Sin el circuito de retroalimentación, pude reemplazar el débil despliegue por uno fuerte y eliminar la necesidad del PMOS o invertir la entrada de CPLD. Los pulsos parásitos al final de los datos todavía existen sin el circuito de realimentación. ¿Alguna idea de qué lo está causando?

Edición n. ° 4: los impulsos parásitos siguen allí después de agregar histéresis, pero los pulsos son mucho más limpios. Creo que el conductor está generando estos pulsos innecesariamente.

    
pregunta spizzak

1 respuesta

1

Está utilizando el N-FET como seguidor de la fuente, lo que está bien, pero ha conectado el P-FET de tal manera que invierta los pulsos, es decir, cuando el opamp es alto, La entrada de CPLD será baja, y viceversa. ¿Tuviste esto en cuenta en tu diseño de CPLD?

Sin embargo, no me queda claro por qué tiene el drenaje del N-FET conectado de nuevo a la entrada no inversora del opamp, lo que crea una cierta cantidad de retroalimentación negativa.

    
respondido por el Dave Tweed

Lea otras preguntas en las etiquetas