Allungando un impulso di 5 ns


13

Ho un'ampiezza di impulso di 5 ns che esce da un comparatore che è asincrono. Sto tentando di contare questo impulso. Il mio attuale microcontrollore (dsPIC33FJ) ha un contatore asincrono a bordo, con una specifica minima di almeno 10 ns di larghezza dell'impulso alta.

Quali sono le mie opzioni per allungare / allungare questo impulso di 5 ns in modo che possa essere letto dal contatore? Sono aperto al passaggio a un diverso microcontrollore o all'uso di un contatore front-end più qualificato, ma preferirei utilizzare invece circuiti passivi / semplici. È possibile?

Quello che ho studiato finora:

  1. Ho provato a collegare un condensatore .1uF tra il segnale di uscita e la terra nella speranza che la scarica lo rallentasse, ma tutto ciò che ha fatto è stato di distorcere pesantemente il segnale. Posso usare un valore molto più basso?

  2. Ho cercato dei campioni e conservato i circuiti integrati, ma il tempo di acquisizione più breve che ho trovato è di circa 200 ns, il che non è adatto alla mia applicazione.


Nyquist afferma che è necessario almeno un clock di campionamento di 400 MHz per teoricamente catturare un evento di durata di 5 ns ... se ricordo / calcolato correttamente
vicatcu

6
Nyquist non ha nulla a che fare con questo. Non si tratta di riprodurre un segnale analogico da campioni di tempo discreto qui.
The Photon,

2
Quanto velocemente può ripetersi l'impulso e dovrai comunque contarlo come impulsi separati? Se è abbastanza lungo, puoi provare SN74LVC1G123 ( ti.com/product/sn74lvc1g123 ).
The Photon,

2
Dai un'occhiata a questo articolo di EE Times: la barella ad impulsi rapida e semplice rileva gli eventi di nanosecondi . Esistono comparatori veloci con una funzione di blocco, che possono essere utilizzati per l'allungamento del polso.
Nick Alexeev

Risposte:


16

Un multivibratore monostabile riattivabile come 74LV123 soddisferebbe bene le tue esigenze:

  • Larghezza minima dell'impulso 3,0 ns per funzionamento a 3 volt, 2,5 ns a 5 volt.
  • Larghezza dell'impulso di uscita configurata da R / C esterno, in genere 470 microsecondi
  • Tempo di riavvio da 45 ns (3 volt) a 40 ns (5 volt).

È un CI logico standard, con una complessità molto ridotta e ci sono due monostabili nel pacchetto nel caso in cui sia necessario allungare un'altra sorgente di impulsi.

La parte è disponibile in DIP e TSSOP, quindi breadboard e opzioni di produzione.

Spero che questo abbia aiutato.


6

Ecco una semplice barella a impulsi positivi con alcune condizioni:

Il guadagno del transistor farà aumentare rapidamente l'uscita, ma poi decadrà a terra secondo la costante di tempo RC, che in questo esempio è 47 ns.

Uno dei problemi è che potresti non essere in grado di tollerare la caduta di tensione BE. Se l'ingresso PIC richiede l'80% di Vdd per un massimo garantito e il processore funziona da 3,3 V, OUT deve essere superiore a 2,6 V per essere interpretato come un massimo. Tuttavia, se IN è anche un segnale logico a 3,3 V e presupponendo una caduta di 700 mV BE, in primo luogo OUT raggiunge solo 2,6 V.

Questo circuito può essere ancora utilizzabile se la soglia minima minima logica PIC è inferiore o IN è una tensione più alta. Alcuni ingressi su alcune parti 33F sono tolleranti a 5 V. Se puoi organizzare IN come segnale logico a 5 V e utilizzare un ingresso tollerante a 5 V, avrai un margine sufficiente per la costante di tempo per mantenere la linea alta più a lungo dell'impulso.

Se OUT può in qualche modo essere garantito per andare a 3,3 V al picco dell'impulso e l'ingresso logico alto garantito del PIC è 2,6 V, allora questo circuito allungherà l'impulso di circa 1/2 costante di tempo, o circa 24 ns in questo esempio.


Perché non utilizzare un opamp invece del transistor in modo che la caduta di tensione BE non sia un problema?
Gioele B

2
Un opamp potrebbe non essere abbastanza veloce. Non amano particolarmente gli input di passo.
Gbarry,

3

Con quale frequenza ricevi impulsi? Il tuo contatore può contare sia i fronti di salita che di discesa anziché gli impulsi?

Se gli impulsi non sono molto frequenti, esegui l'impulso nell'ingresso di clock di un T-Flip-Flop. Ogni volta che si ottiene un impulso, l'uscita TFF commuta, creando un fronte. Gli impulsi devono essere abbastanza distanti tra loro in modo che l'MCU abbia il tempo di registrare il fronte prima che arrivi quello successivo.

Se l'MCU non è in grado di lavorare su entrambi i fronti di salita e di discesa, allora potresti essere in grado di usare due contatori (un fronte di salita, un fronte di discesa) o anche solo accettare che puoi contare solo ogni due impulsi.


2

Una linea di ritardo programmabile dovrebbe fare quello che stai cercando. Allungherà il polso di 5 ns ovunque tra 5 ns e 500 ns. Quello sopra è esaurito su DigiKey ma il foglio dati è una buona lettura per mostrarti la teoria. Eccone uno di Linear che è disponibile e dovrebbe fare ciò che speri.


La "Larghezza minima dell'impulso riconosciuta" per quella parte lineare è tipica di 5 ns, senza min o max specificati. In realtà non lo userei per un impulso di 5 ns poiché praticamente non c'è margine di errore e probabilmente non funzionerà su PVT.

La parte semi Dallas ha una larghezza minima dell'impulso di 5 ns (un minimo minimo, non minimo min come Linear Tech), che lo rende migliore rispetto alla parte lineare ma può o meno funzionare a seconda di cosa necessita esattamente l'OP.

Il DS1040 sembra buono, ma come ha detto David, l'impulso minimo di 5ns mi mette un po 'a disagio. Ho visto la gamma di impulsi da 4-7 ns. Per quanto riguarda la frequenza degli impulsi, potrebbero essere separati da una lunghezza inferiore a 5 ns (sebbene improbabile). Vorrei catturare il maggior numero possibile di impulsi per garantire un segnale / conteggio più accurato. La tecnologia lineare che hai collegato sembra avere un minimo di 1000 ns.
Cameron,

1

Ecco una barella a impulsi molto semplice. Può utilizzare la porta logica universale NC7SZ58P6X per implementare la porta OR. Il foglio delle specifiche mostra un ritardo di propagazione massimo di 4,3 nS a 5 v.

schematico

simula questo circuito - Schema creato usando CircuitLab

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.