Come si simula il rumore di tensione con LTSpice?


42

Esiste un modo per impostare una tensione di alimentazione con jitter / rumore di tensione? Voglio sperimentare il filtraggio del rumore su varie tensioni ecc. Ma non sono sicuro di come configurare LTSpice per creare un'alimentazione di tensione rumorosa.

Risposte:


51

Sì, puoi iniettare rumore usando la sorgente di tensione (o corrente) arbitraria, quindi usare cose come la funzione randomo whiteper creare del rumore.

Ecco un circuito di esempio (ho separato il rumore dal segnale solo per rendere le cose più chiare - ovviamente puoi combinarle insieme in una funzione se lo desideri):

Circuito acustico

Simulazione:

Simulazione del circuito del rumore

Tutte le funzioni sono dettagliate nella guida sotto circuit elements -> arbitrary behavioral voltage or current sources.

Modalità di simulazione del rumore

Inoltre, nel caso in cui non fossi a conoscenza, SPICE ha una modalità di simulazione del rumore, per citare dai file della guida:

.NOISE -- Perform a Noise Analysis
This is a frequency domain analysis that computes the noise due to
Johnson, shot and flicker noise. The output data is noise spectral 
density per unit square root bandwidth.

Syntax: .noise V(<out>[,<ref>]) <src> <oct, dec, lin> <Nsteps> <StartFreq> <EndFreq>

Esempio di base:

Modalità rumore

Simulazione:

Modalità rumore

Quanto sopra è piuttosto noioso in quanto modella solo il rumore del resistore (ho passato il resistore attraverso vari valori per mostrare come il rumore Johnson aumenta con la resistenza). Ma può essere molto utile con circuiti più complessi contenenti diodi / transistor / opamp / ecc.


1
Anche se troppo tardi, invece di utilizzare fonti di tensione aggiunte tramite resistori, puoi semplicemente usare: V1 out 0 sin() Rser=1 B1 0 out I=white() con una giunzione diretta. Per valori di rumore più bassi (e resistenza di uscita), più bassi Rser.
un cittadino preoccupato,

1
La fonte di tensione del rumore è 'bv' quando si preme F2 per cercare il componente.
Jony,

22

(Non abbastanza rappresentante ancora per creare un commento sul post di Oli, quindi questo va in un suo post).

Il post di Oli sopra è molto utile, ma per il principiante di LTSpice, forse vale la pena spiegare come creare effettivamente una di quelle "sorgenti di tensione comportamentale arbitraria": mi aspettavo ingenuamente di poter modificare il valore di una normale sorgente di tensione inserisci la formula bianca (...), ma ovviamente non funziona.

Invece, devi premere il pulsante "componente" nella barra degli strumenti e, nella finestra che si apre, selezionare un componente di tipo "bv".


4

SPICE (non posso dirti se LTSPice è un sottoinsieme di SPICE normale o meno) normalmente ha la capacità di modellare il rumore generato da ciascun dispositivo. Penso che la tua domanda sia più su come misurare l'efficacia del tuo filtro e quanto un segnale di interferenza esterna può influenzare ciascun nodo.

Per fare quello che devi fare è l'analisi .AC del circuito.

Per fare un'analisi del rumore devi usare sia .ac che .noise. Quindi l'analisi del rumore è un sottoinsieme dell'analisi ac.


Ho appena controllato. LTSpice ha a disposizione un'analisi del rumore. Ma non riesco a trovare una fonte di rumore nel catalogo delle parti --- spero che qualcuno possa venire e dire dove trovarlo.
Il fotone

@ThePhoton tutti i dispositivi in ​​spezie DOVREBBERO essere rumorosi, cioè non ideali - rumore in meno. Quindi dovrebbe già essere nei modelli. Sospetto che anche LTSpice dovrebbe averlo.
segnaposto

2
Secondo il file della Guida, "Questa è un'analisi del dominio della frequenza che calcola il rumore dovuto a Johnson, al rumore di sparo e sfarfallio". Quindi se hai uno schema del tuo circuito, stai bene. Ma se, ad esempio, stai creando un modello di amplificatore operazionale basato su parametri e / o misure del foglio dati, usi spesso componenti idealizzati come sorgenti controllate e vuoi avere un elemento sorgente di rumore per sistemare le caratteristiche del rumore.
Il fotone

@ThePhoton Si chiama onestà, non ho LTSPICE in esecuzione e non ho intenzione di presumere le cose. Fornire informazioni sulla tua istanza è l'ideale. Il fatto che io mostri i risultati dei miei strumenti EDA completi può essere utile o meno. Ogni variante di SPICE fa le cose in modo leggermente diverso.
segnaposto

@Photon e rawbrawb - poiché i modelli per vari SPICE sono generalmente compatibili tra loro, suggerirebbe che il problema risiederebbe nei modelli piuttosto che nella variante SPICE. Per quanto ne so, i modelli di base non includono la modellazione del rumore, ad esempio una sim transitoria, ma funzioneranno tutti con la simulazione del rumore dedicata. Ad esempio, se provi l'ultima simulazione nella mia risposta come un transitorio senza tensione di ingresso, otterrai 0 V in uscita (rispetto al previsto 20-44nV)
Oli Glaser

1

Siccome vuoi iniettare rumore dall'alimentatore, penso che sia più semplice mettere una sorgente di tensione CA di piccola ampiezza in serie con la sorgente di tensione CC che hai già e spazzare la sua frequenza attraverso l'intervallo che ti interessa.


1
.ac lo fa automaticamente per te
segnaposto

Immagino di dover perfezionare le mie conoscenze SPICE.
jippie,

0

In serie con la sorgente di tensione aggiungere un elemento E i cui ingressi sono collegati a una resistenza da 60,34 e18 ohm e il cui guadagno è il V / rt-Hz desiderato. Questo valore di resistenza produce 1 V / rt-Hz a 300 K. (Attenzione: è necessario mettere a terra un lato dell'ingresso.)

È possibile utilizzare lo stesso valore di resistenza dell'ingresso a una sorgente di corrente controllata in tensione il cui guadagno è l'Amp / rt-Hz desiderato. (Ancora una volta, un cavo di ingresso deve essere collegato a terra.) La sorgente di corrente di rumore si collega in parallelo con la sorgente di corrente silenziosa.

È necessario utilizzare un resistore separato per ciascuna sorgente di rumore.

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.