Alargamiento de un pulso de 5 ns

Tengo un ancho de pulso alto de 5 ns que sale de un comparador que es asíncrono. Estoy tratando de contar este pulso. Mi microcontrolador actual (dsPIC33FJ) tiene un contador asíncrono integrado, con una especificación mínima de al menos 10 ns de ancho de pulso Alto.

¿Cuáles son mis opciones para alargar/alargar este pulso de 5 ns para que el contador pueda leerlo? Estoy abierto a cambiar a un microcontrolador diferente o usar un contador frontal más calificado, pero preferiría usar un circuito pasivo/simple en su lugar. es posible?

Lo que he investigado hasta ahora:

  1. Intenté atar un capacitor de .1uF entre la señal de salida y tierra con la esperanza de que la descarga la ralentizara, pero todo lo que hizo fue distorsionar fuertemente la señal. ¿Puedo usar un valor mucho más bajo?

  2. Investigué IC de muestra y retención, pero el tiempo de adquisición más corto que pude encontrar es de alrededor de 200 ns, lo que no es adecuado para mi aplicación.

Nyquist dice que necesita al menos un reloj de muestreo de 400 MHz para capturar teóricamente un evento de duración de 5 ns ... si recuerdo / calculé correctamente
Nyquist no tiene nada que ver con esto. Aquí no se trata de reproducir una señal analógica a partir de muestras de tiempo discreto.
¿Qué tan rápido puede repetirse el pulso y todavía tendrá que contarlo como pulsos separados? Si es lo suficientemente largo, puede probar SN74LVC1G123 ( ti.com/product/sn74lvc1g123 ).
Consulte este artículo de EE Times: El extensor de pulso rápido y simple de un solo disparo detecta eventos de nanosegundos . Hay comparadores rápidos con función de bloqueo, que se pueden usar para estirar pulsos.

Respuestas (5)

Un multivibrador monoestable reactivable como el 74LV123 cumpliría bien con sus requisitos:

  • Ancho de pulso mínimo 3,0 ns para operación de 3 voltios, 2,5 ns a 5 voltios.
  • Ancho de pulso de salida configurado por R/C externo, típicamente 470 microsegundos
  • Tiempo de reactivación 45 ns (3 voltios) a 40 ns (5 voltios).

Es un IC lógico estándar, de muy poca complejidad, y hay dos monoestables en el paquete en caso de que necesite estirar otra fuente de pulso.

La pieza está disponible en DIP y TSSOP, por lo que ofrece opciones de placa de pruebas y producción.

Espero que esto haya ayudado.

Aquí hay una camilla de pulso positivo simple con algunas condiciones:

La ganancia del transistor hará que la salida aumente rápidamente, pero luego volverá a caer a tierra de acuerdo con la constante de tiempo RC, que es 47 ns en este ejemplo.

Uno de los problemas es que es posible que no pueda tolerar la caída de voltaje de BE. Si la entrada del PIC requiere el 80 % de Vdd para un nivel alto garantizado y el procesador funciona desde 3,3 V, la SALIDA debe estar por encima de los 2,6 V para que se interprete como un nivel alto. Sin embargo, si IN también es una señal lógica de 3,3 V y suponiendo una caída de 700 mV BE, entonces OUT solo llega a 2,6 V en primer lugar.

Este circuito todavía se puede utilizar si el umbral alto lógico mínimo de PIC es más bajo o IN es un voltaje más alto. Algunas entradas en algunas partes 33F son tolerantes a 5 V. Si puede configurar IN para que sea una señal lógica de 5 V y use una entrada tolerante a 5 V, tendrá suficiente margen para que la constante de tiempo mantenga la línea alta durante más tiempo que el pulso.

Si de alguna manera se puede garantizar que OUT vaya a 3,3 V en el pico del pulso y la entrada lógica alta garantizada del PIC es de 2,6 V, entonces este circuito estirará el pulso aproximadamente 1/2 constante de tiempo, o aproximadamente 24 ns en este ejemplo

¿Por qué no usar un amplificador operacional en lugar del transistor para que la caída de voltaje de BE no sea un problema?
Un opamp puede no ser lo suficientemente rápido. Les desagradan especialmente las entradas por pasos.

¿Con qué frecuencia recibe pulsos? ¿Puede su contador contar los flancos ascendentes y descendentes en lugar de los pulsos?

Si los pulsos no son muy frecuentes, ejecute su pulso en la entrada de reloj de un T-Flip-Flop. Cada vez que reciba un pulso, la salida TFF alternará, creando un borde. Los pulsos deben estar lo suficientemente separados para que la MCU tenga tiempo de registrar el borde antes de que entre el siguiente.

Si su MCU no puede trabajar con los flancos ascendente y descendente, entonces podría usar dos contadores (un flanco ascendente, un flanco descendente), o incluso simplemente aceptar que solo puede contar cada dos pulsos.

Una línea de retardo programable debería hacer lo que busca. Estirará su pulso de 5 ns en cualquier lugar entre 5 ns y 500 ns. El de arriba está agotado en DigiKey, pero la hoja de datos es una buena lectura para mostrarle la teoría. Aquí hay uno de Linear que está en stock y debería hacer lo que espera.

El "ancho de pulso mínimo reconocido" para esa parte lineal es de 5 ns típico, sin especificar mínimo ni máximo. En realidad, no usaría esto para un pulso de 5 ns, ya que básicamente no hay margen de error y probablemente no funcione con PVT.
La parte Dallas Semi tiene un ancho de pulso mínimo de 5 ns (un mínimo mínimo, no typ min como Linear Tech), lo que la hace mejor que la parte Linear, pero puede o no funcionar según lo que necesite exactamente el OP.
El DS1040 se ve bien, pero como dijo David, el pulso mínimo de 5 ns me hace sentir un poco incómodo. He visto el rango de pulso de 4-7 ns. En cuanto a la frecuencia de los pulsos, podrían estar separados por una longitud tan corta como 5 ns (aunque poco probable). Me gustaría capturar tantos pulsos como sea posible para asegurar una señal/conteo más preciso. Parece que el Linear Tech que vinculaste tiene un mínimo de 1000 ns.

Aquí hay una camilla de pulso muy simple. Puede usar la puerta lógica universal NC7SZ58P6X para implementar la puerta OR. La hoja de especificaciones muestra un retraso de propagación máximo de 4,3 nS a 5v.

esquemático

simular este circuito : esquema creado con CircuitLab