Metriche tipiche dei Mixer in ambiente Cadence ©
Introduzione
I moderni metodi di progettazione di circuiti integrati non possono prescindere dalle
simulazioni elettriche: esse sono indispensabili sia in fase di progetto che di verifica di un
circuito. Tipicamente, la progettazione full-custom viene svolta utilizzando ambienti CAD
integrati; il simulatore circuitale utilizzato per questo lavoro di tesi è CADENCE Design
Framework che gira su piattaforma UNIX. Questo tool è estremamente efficiente, infatti
sono possibili molteplici tipologie di analisi sia sullo schematico che sul Layout. Il
simulatore attraverso la risoluzione di sistemi di equazioni circuitali, basati sull’uso di
opportuni modelli matematici ed algoritmi di calcolo sofisticati, è in grado di risolvere
equazioni molto complesse sia nel dominio del tempo che nel dominio della frequenza,
derivanti da modelli altrettanto complessi dei dispositivi elettronici utilizzati. La libreria di
tecnologia (comprendente i diversi dispositivi) viene collegata ai files di libreria del
simulatore e quindi i risultati delle simulazioni sono particolarmente corrispondenti al loro
comportamento reale (post-produzione). Cadence è lo strumento di indagine usato da
molte aziende che operano nel settore elettronico; pertanto, di seguito viene brevemente
descritto il suo modo di operare, le modalità di testing e le impostazioni tipiche usate per
simulare le metriche caratteristiche del Mixer a reiezione.
3.1 CADENCE Design Systems
©Nell’ambito della progettazione a RF, lo strumento di analisi e sviluppo di circuiti integrati (IC) che più si avvicina alle esigenze del progettista, è sicuramente l’ambiente CADENCE Design Systems
©. Infatti, CADENCE
( )1è da anni uno standard industriale, e può essere configurato per lavorare con quasi tutte le tecnologie di fabbricazione di circuiti integrati disponibili sul mercato. Questa interfaccia permette la gestione unificata del flusso di progetto di circuiti integrati digitali, analogici o misti, e comprende, inoltre, un numero rilevante di strumenti software [1]. Virtuoso e Diva sono i tool usati per la realizzazione e la verifica del layout. I simulatori Spectre e SpectreS sono dedicati, rispettivamente, all’analisi di sistemi ad alte frequenze e all’estrazione dei parametri S. SpectreHDL (Spectre High- Level Description Language) e Verilog
®-A adottano una descrizione testuale (modules) per modellare il comportamento elettrico di circuiti o di altri sistemi. Invece, Affirma™ RF Simulator (SpectreRF) è lo strumento usato soprattutto per simulare i moderni circuiti impiegati nelle comunicazioni wireless. Infatti, presenta potenzialità e caratteristiche tali da trattare non solo il dispositivo da un punto di vista elettrico (caratterizzando p.es. la model di un transistor e l’estrazione dei componenti parassiti), ma anche circuiti di elevata complessità, come nel caso di interi chip adagiati nei packages o di sistemi tempovarianti con elevate non-linearità. Gli algoritmi di simulazione implementati consentono di ottenere risultati accurati, efficienti e immediati, nonostante l’elevato numero di equazioni differenziali da risolvere. La convergenza è ragionevolmente veloce anche nel caso di circuiti switching, oscillatori, filtri a capacità commutate, mixer e circuiti di campionamento [2]. In particolare, Affirma (SpectreRF) permette di condurre analisi non- lineari, quali Conversion Gain ( ), Compression Point ( ), Third Order Intermodulation Distortion (
G
cCP
1dBIM3 ), Noise Figure ( ), risposte a toni spuri e altre ancora. La caratterizzazione del rumore, della linearità e delle forme d’onda del dispositivo da testare possono essere condotte nel dominio del tempo o della frequenza, e valutate sia per piccoli che per grandi segnali [3].
NF
(1)
©2001 Cadence Design Systems, Inc. All rights reserved. Cadence, the Cadence logo, Diva, Spectre, and Verilog are registered trademarks, and "how big can you dream?" is a trademark of Cadence Design Systems, Inc. All others are properties of their respective holders.
3.2 Ambiente di simulazione: Analog Artist
Analog Artist è l’ambiente di simulazione analogica o Mixed-Signal integrato in Cadence Design Systems. Analog Artist è un prodotto che raggruppa e integra gli strumenti fondamentali per la progettazione di circuiti integrati, vale a dire un editor grafico di schemi circuitali, alcuni simulatori circuitali, un editor grafico di layout, vari tools di analisi dei risultati, programmi per la verifica della correttezza del progetto e altri strumenti ancora.
Analog Artist, tra le altre cose, permette di scegliere il simulatore (nel nostro caso SpectreRF), di creare il relativo file di ingresso (netlist) a partire direttamente dallo schema elettrico di riferimento, e di eseguire elaborazioni e misure sui risultati della simulazione.
Analog Artist è indipendente dal tipo di simulatore utilizzato, che può essere Cadence Spice, Hspice, Eldo, Cadence SpectreS o Cadence Spectre [4].
Per lanciare Cadence, che gira su piattaforma Unix, si utilizzano opportuni comandi direttamente dalla Shell, e la schermata iniziale si presenta come in Fig. 3.1.
Fig. 3.1: Finestre iniziali di Cadence: icfb e Library Manager
Particolare importanza riveste la finestra Command Interpreter Window (CIW), anche denominata icfb, dalla quale si può amministrare la propria area di lavoro, gestire tutti gli strumenti software e le utilità di sistema incluse nel pacchetto Cadence, lanciare utility, applicazioni dai menu a tendina e visualizzare eventuali errori, warning o altri messaggi nelle aree di dialogo.
La finestra Library Manager permette di gestire i propri progetti e le librerie di sistema;
in particolare, è possibile creare librerie, aprire le viste delle celle, creare schematici e celle personalizzate, copiare librerie, copiare celle fra librerie o visualizzare la struttura delle librerie .
3.2.1 Organizzazione di un progetto
In linea con quanto detto a proposito della Library Manager, un progetto è organizzato in librerie, celle e viste. I costruttori forniscono alcune librerie che contengono: le primitive, cioè i dispositivi elementari utilizzabili in un progetto (transistor, diodi, resistenze, condensatori), i dispositivi ideali (generatori di segnale, terminali di alimentazione e massa, interruttori, etc.), celle standard digitali o analogiche preprogettate. Infine, nella stessa sezione compaiono anche le librerie create dall'utente per contenere i moduli circuitali del progetto. Dopo aver dato un nome alla propria libreria, è necessario settare l’opzione Attach to an existing techfile e successivamente inserire il nome della Technology Library (nel nostro caso è s35d4). In questo modo, ad ogni singolo circuito creato (cella) viene associata una libreria collegata alla tecnologia utilizzata nella realizzazione di circuiti integrati (regole di layout, parametri dei dispositivi e altri riferimenti ).
Ciascuna cella dispone di più viste, corrispondenti ai diversi modi in cui un modulo circuitale può essere rappresentato: vista schematic (schema elettrico), vista symbol (scatola nera con terminali di ingresso/uscita corrispondenti a quelli dello schema elettrico, utilizzabile all'interno di schemi elettrici di altre celle), vista layout (rappresentazione grafica delle maschere necessarie per la realizzazione fisica del modulo circuitale), vista extracted (circuito equivalente, che include anche gli elementi parassiti, estratti dal layout).
Ogni cella corrisponde ad un modulo circuitale del sistema complessivo, la cui struttura può
essere gerarchica.
3.2.2 Creazione di uno schema elettrico
Per creare una cella di tipo schematic, che contiene lo schema elettrico di un modulo circuitale, bisogna selezionare la libreria creata nel Library Manager, e tramite il menu File selezionare New Cellview, quindi specificare il nome della cella e la sua vista. Composer è l'editor grafico che permette di realizzare schemi elettrici e simbolici (viste schematic e symbol) dei moduli circuitali del progetto. La Schematic Window (come del resto la Layout Window) è l’area di design vero e proprio, nella quale si disegna lo schema circuitale da testare. L’inserimento e la modifica delle proprietà degli elementi di libreria (p.es. un transistor, delle porte di I/O o complessi sottocircuiti) sono abbastanza semplici e immediati, grazie anche alla possibilità di selezionare gli oggetti mediante tasti di scelta rapida presenti sulla finestra stessa o direttamente con l’ausilio della tastiera [5]. Un esempio è la funzione “Add Instance” che permette di inserire i simboli degli elementi circuitali o anche il tasto Q, che attiva la finestra di modifica di un dispositivo (previa la sua selezione).
Fig. 3.2: Properties di due elementi circuitali
Dopo aver aggiunto i generatori di alimentazione, di segnale, la massa, ed aver realizzato le opportune interconnessioni, è necessario inserire i terminali di input/output del circuito, in modo che possa comunicare con il mondo esterno ed essere utilizzato all'interno di altri moduli circuitali per creare una struttura gerarchica (comando Add Pin…). In Fig.3.2 sono riportati il form tipico di un transistor bipolare (il cui nome è Q22 e la sua area è pari a 3) e di una Resistenza (il cui nome è Res11 e il valore è la variabile Rc).
Terminato il design dello schema elettrico (vista Schematic), si può passare alla creazione della vista symbol della cella, che può essere salvata come cella di libreria ed essere usata all’interno di un nuovo schematico.
Uno schematico gerarchico può essere realizzato inserendo più simboli in uno schematico e successivamente creare una ulteriore vista simbolica. Lo schematico finale (Top Schematic) non mostra esplicitamente i componenti circuitali utilizzati, ma soltanto i simboli globali. Questo modo di procedere appena descritto viene detto a gerarchia, in quanto è possibile effettuare le analisi su uno schematico gerarchico di livello superiore.
Per scendere o salire nei livelli di gerarchia, si usano semplici comandi da tastiera (shift + E e simili) o direttamente dai menu a tendina.
3.2.3 Simulazione circuitale: Affirma
Una volta inseriti i componenti nella cella di test della nostra libreria, si lancia Affirma
Analog Artist (tramite Analog Environment, dal menu Tools dello stesso Schematic da
testare) e si impostano i parametri per avviare l’analisi e regolare tutti i passi del processo
di simulazione. L'ambiente Affirma Analog Artist permette di gestire in modo unificato
tutte le simulazioni di tipo analogico o misto analogico/digitale. Analog Artist, fra le altre
cose, permette di scegliere il simulatore, di creare il relativo file di ingresso con tutti i
riferimenti e nodi (netlist) a partire direttamente dallo schema elettrico creato con
Composer, di eseguire elaborazioni sui risultati della simulazione o di visualizzare le forme
d’onda desiderate. La finestra di lavoro, Analog Artist Simulation, e i relativi menu a
tendina sono mostrati in Fig. 3.3.
Fig. 3.3: Analog Artist Simulation
Questa finestra, oltre ad essere dotata di una serie di tasti di scelta rapida, è suddivisa in quattro pannelli.
9 Nel riquadro Design compaiono i nomi di libreria, la cella e la vista selezionata.
Per creare la vista Symbol a partire da uno schematico, si deve cliccare il tasto Design dal menu Setup e successivamente selezionare Create Cellview e quindi From Cellview.
Queste finestre e la vista Symbol, sono mostrate in Fig. 3.4 .
Fig. 3.4: Finestre per la creazione del Simbolo
9 Il pannello Design Variables visualizza i valori delle variabili o i rispettivi parametri
inseriti nelle properties dell’elemento circuitale. La Fig. 3.5 mostra la finestra Editing
Design Variables, dalla quale si possono impostare, cancellare o cambiare i valori delle
variabili. È molto comodo usare le variabili invece che i valori numerici; infatti, se si
vuole modificare il valore di un parametro, non occorre agire sullo schematico, ma
basta impostare una nuova espressione numerica o una funzione per la variabile in esame.
Fig. 3.5: Finestra Editing Design Variables
9 Nel box Analyses vengono visualizzate le analisi da effettuare. Le analisi e le relative impostazioni saranno discusse nei paragrafi successivi.
9 Nella sezione Outputs sono elencati i segnali che dovranno essere plottati o dei quali si darà una descrizione analitica. Dunque, prima di lanciare l’analisi occorre selezionare dal menu Outputs il campo Save All per fissare i parametri da salvare. Per default, Analog Artist fa salvare a Spectre i valori di tensione di tutti i nodi, compresi i nodi interni delle istanze definite dall’utente (la cella da testare nel nostro caso) e nessuna corrente. Pertanto, si potranno abilitare e disabilitare questi salvataggi “globali” (ad esempio: selezionare all nelle righe Select signals to Output (save) per salvare tutte le uscite). Il form per salvare le Options è evidenziato in Fig. 3.6.
Fig. 3.6: Form Save Options
In particolare, per scegliere quali tensioni o correnti graficare automaticamente al termine della simulazione, occorre selezionare To Be Plotted (oppure To Be Saved) e successivamente Select on Schematic seguito dal tasto ESC. Nello schematico, le correnti si selezionano puntando il mouse sui pin dei componenti, mentre le tensioni si selezionano cliccando sui fili (wire) di collegamento. In alternativa, per introdurre nuove forme d’onda da plottare o modificare le variabili da salvare, si può anche selezionare Setup dal menu Output. Nel caso in cui si voglia graficare p.es. una impedenza (ossia, rapporto fra una tensione e una corrente) o, più in generale, valutare una qualsiasi funzione (combinazione di parametri di diversa natura), è molto utile operare con il Calculator.
Il Calculator è un calcolatore scientifico con notazione algebrica Polacca inversa (RPN) che permette di costruire espressioni con le uscite delle simulazioni, memorizzare relazioni e funzioni contenenti tensioni, correnti, salvare la memoria su file e ricaricarla quando necessario, ecc. Il Calculator utilizza un buffer e uno stack per manipolare le espressioni.
Fra le varie opzioni implementate dal Calculator, spiccano le funzionalità della sezione RF ed il gruppo Special Functions evidenziate in Fig. 3.7 (a) e (b), rispettivamente.
(a) (b)
Fig. 3.7: Sezione RF (a) e Special Functions (b) del Calculator
Semplicemente cliccando sul pulsante centrale del mouse si aggiunge la quantità da valutare alla sezione Outputs, così da essere computata automaticamente alla fine della simulazione o essere salvata nello stato attuale.
Tra le molteplici opportunità offerte per la gestione ottimale del processo di
simulazione, vale la pena ricordare, inoltre, che:
• dal menu Setup si sceglie il simulatore, i modelli dei dispositivi attivi e la directory in cui vengono salvati dati e risultati;
• il menu Simulation permette di creare il file di ingresso per il simulatore (netlist), di lanciare o interrompere una simulazione e di visualizzare il file con i messaggi del simulatore;
• dal menu Results si possono visualizzare (senza ulteriore possibilità di elaborazione) i risultati di una simulazione, sia quelli graficabili che quelli in formato testo o recuperare quelli precedentemente salvati;
• da Tools si possono visualizzare ed elaborare i risultati delle simulazioni;
• è possibile chiudere l'ambiente di simulazione dal menu Session.
Una volta impostata la finestra Analog Artist, si può dare il via alla simulazione, cliccando sull’icona Netlist and Run (“semaforo verde”). Al fine di non ripetere le operazioni di settaggio della Affirma o semplicemente per confrontare due analisi diverse in momenti diversi, è possibile salvare le impostazioni della simulazione: lo State di Analog Artist. In pratica, si effettua una sorta di “fotografia” di analisi e segnali selezionati, finestre aperte, valori impostati ecc. Per salvare lo stato, è sufficiente dare il comando Save state dal menu Session e assegnargli il nome appropriato; mentre, per ripristinarlo occorre selezionare simulatore e cella e dare il comando Load State. Queste operazioni sono mostrate in dettaglio in Fig. 3.8 .
(a) (b)
Fig. 3.8: Salvataggio dello Stato (a) e caricamento (b)
Le analisi delle simulazioni, utili per la descrizione del layout, verranno chiarite nel Cap 6.
Per ulteriori e più approfonditi dettagli sul funzionamento del simulatore, si rimanda alla copiosa gamma di manuali forniti con il simulatore stesso [5-9].
3.3 Tipologie di Analisi
Cadence è uno strumento molto efficiente ed è in grado di eseguire le più disparate analisi, anche molto pesanti, sia da un punto di vista computazionale che circuitale.
Accanto alle analisi tradizionali, quali ad es. DC, AC, Transient, ne spiccano alcune specifiche per le applicazioni a RF (PSS, Pnoise, PXF ed altre). In particolare, per il Mixer sono utili, nonché necessarie, quelle tipologie di analisi che permettono di valutare gli effetti e le prestazioni del circuito in seguito ad una traslazione di frequenza. Vista la natura fortemente nonlineare del Mixer, le maggiori difficoltà si incontrano sia per quel che riguarda la capacità di convergenza, sia per i tempi di simulazione, anche in relazione al grado di accuratezza richiesto. Ovviamente, per tutte quelle analisi che prevedono uno solo dei segnali attivi, RF oppure LO, i tempi di simulazione si riducono e la convergenza migliora, anche scegliendo un livello di risoluzione elevato. Come anticipato in precedenza, le analisi vengono scelte ed impostate dalla finestra Analog Artist, scegliendo Choose dal menu Analyses; il form che compare è riportato in Fig. 3.9 .
Fig. 3.9: Tipologie di Analisi
Si riporta di seguito (Fig. 3.10) la finestra di impostazione della porta del segnale RF,
che verrà modificata in base alle diverse analisi da eseguire. Al momento di impostare i
campi, non è necessario specificare le unità di misura poiché il simulatore riconosce il
valore numerico e inserisce automaticamente quelle che ha in memoria.
Fig. 3.10: Porta RF
Adesso vengono discusse adesso le analisi che, da sole o congiuntamente ad altre, permettono di simulare il comportamento del Mixer.
3.3.1 DC
L’analisi DC (in continua) è la più semplice e la più veloce. Calcola il punto di riposo dei dispositivi, considerando attivi sia i generatori in continua sia i generatori indipendenti di segnale (sia di corrente che di tensione) che abbiano impostato il campo DC value
( )2. Con il calcolo del punto di riposo, il simulatore determina il valore DC delle tensioni ai
( )2
Tale campo è indipendente dalla forma d’onda impostata per il transitorio, per ogni istante di tempo.
nodi del circuito e delle correnti ai terminali dei componenti. Questa analisi permette anche di generare curve di trasferimento, senza però considerare/includere effetti reattivi.
Inoltre, è possibile valutare anche una caratteristica quasi-statica (DC sweep): viene calcolata la corrispondente successione di punti operativi del circuito.facendo variare un parametro (Sweep Variable, ossia temperatura, resitenze, tensioni o correnti DC di un generatore) in un certo range da specificare. Alcune analisi calcolano per default il punto di riposo, anche se il box DC non è esplicitamente spuntato. Ciò è necessario in quanto l’analisi DC, calcolando i parametri per piccoli segnali (transconduttanze, conduttanze di uscita, capacita` parassite) di tutti i componenti del circuito, determina le condizioni iniziali del circuito (utili per la Tran), i parametri del circuito equivalente ai piccoli segnali (necessari per l’analisi AC) e i punti di lavoro negli istanti di tempo stabiliti dalla PSS.
L’analisi in continua è la prima analisi da effettuare, in quanto risulta il solo strumento di verifica della corretta polarizzazione del circuito realizzato. I risultati del calcolo del punto operativo vengono salvati e resi disponibili solo se esplicitamente richiesto, selezionando il campo Save DC Operating Point (Fig. 3.11).
Fig. 3.11: Form di impostazione dell’analisi DC
Un metodo per visualizzare i risultati consiste nel selezionare Direct Plot dal menu
Results dell’Affirma e quindi Annotate e DC Operating Point. In questo caso i valori di
tensioni, correnti e i parametri rilevanti degli elementi circuitali verranno evidenziati
direttamente sullo schematico. In alternativa si può sfruttare la funzionalità Print, con il
vantaggio di poter ottenere informazioni più dettagliate ed in formato testuale.
3.3.2 AC e PAC
Con l’analisi AC viene linearizzato il circuito attorno al punto di riposo e vengono fatti agire i generatori indipendenti di piccolo segnale che hanno specificati i dati per l’analisi AC. In uno schema circuitale fortemente nonlineare e con più sorgenti differenti di segnali periodici, che operi una traslazione di frequenza, non è possibile usare questa analisi;
esempi significativi sono: Mixer, oscillatori e filtri a capacità commutate. Per superare tali limitazioni, si usa una analisi equivalente per piccoli segnali, detta PAC, attorno ad un punto di lavoro tempovariante. La PAC presuppone che i piccoli segnali specificati non introducano né armoniche superiori né distorsioni. Mediante una analisi Pdisto è possibile modellare le distorsioni e includere gli effetti delle armoniche.
Mediante l’analisi AC, oltre a determinare la risposta ad un “piccolo” stimolo sinusoidale, si può effettuare anche uno sweep frequenziale per valutare l’andamento di una certa grandezza in funzione della frequenza. Per ogni valore di frequenza viene calcolato il valore di regime sinusoidale e i risultati sono fasori di tensione e corrente. Ovviamente, anche il circuito linearizzato è costituito da impedenze complesse che vengono ricalcolate per ogni valore di frequenza a cui si effettua l’analisi. Nella Fig. 3.12 (a) e (b), sono mostrati il form per il settaggio della AC ed la relativa finestra AC Options.
(a) (b)
Fig. 3.12: Impostazione analisi AC (a) e form AC Options (b)
La funzionalità dello sweep può essere applicata non solo alla frequenza ma anche al periodo T o ad una qualsiasi variabile. Nei campi Start-Stop dello Sweep Range si inseriscono i limiti di osservazione del parametro variabile.
Il parametro di suddivisione Sweep Type può assumere i tre valori Linear, Logarithmic e Automatic e fissa la suddivisione dell’asse delle frequenze in lineare, a decade o automaticamente. Il numero di punti rappresenta il numero totale di punti sull’asse delle frequenze nel caso Linear, oppure è il numero di punti per decade (o per ottava) nel caso Logarithmic. I generatori di segnale dovranno avere i campi: Source Type impostato con sine, AC magnitude con l’ampiezza del segnale (in Volt), mentre, non è necessario inserire alcun valore nel campo frequency. L’impostazione di questo tipo di analisi verrà esposta dettagliatamente al momento della descrizione delle metriche che ne richiedono l’uso.
Al termine dell’elaborazione si apre la Waveform Window, che visualizza il grafico dei segnali selezionati; sono, inoltre, disponibili i “classici” strumenti (zoom, cursori, marker, colori, ecc.). I segnali vengono raggruppati per default in uno stesso grafico; per separarli in subwindow premere Axes e poi To strip. La finestra di visualizzazione può essere aperta (o riaperta) anche con il comando Plot Outputs seguito da AC Magnitude (o altro tipo di analisi, secondo i casi), ancora una volta dal menu Results. Se le forme d’onda desiderate sono già impostate nello stato di uscita della simulazione (ossia nel gruppo To Be Plotted), i risultati saranno plottati automaticamente. È anche possibile aggiungere successivamente altre tracce alla visualizzazione, con il medesimo procedimento o con l’ausilio del Calculator, supponendo che i corrispondenti segnali siano stati salvati dal simulatore. Un modo alternativo per plottare le forme d’onda, per visualizzare i risultati testuali o per copiare dati nel Calculator, è usare il comando Result Browser dal menu Tools.
3.3.3 Transient
Questo tipo di analisi (Transient o semplicemente Tran) determina la risposta in
transitorio del circuito e calcola l’andamento nel tempo dei segnali. La condizione iniziale è
data dal punto di lavoro determinato con l’analisi DC. Il circuito sul quale viene condotta
l’analisi in regime transitorio non viene più linearizzato attorno al punto di riposo, ma
vengono mantenute tutte le nonlinearità del sistema. È possibile specificare l’intervallo di
osservazione dei segnali tempovarianti (Stop Time espresso in ns) e definire anche
l’accuratezza (Accuracy) con la quale verrà effettuata l’analisi. A volte la convergenza può essere difficoltosa; in questi casi è opportuno fissare manualmente il passo di risoluzione delle equazioni (step e maxstep) dal menu Options. La Fig. 3.13 riassume tali impostazioni.
Fig. 3.13: Impostazione analisi Tran
L’analisi Tran viene effettuata facendo agire i generatori indipendenti di piccolo segnale per i quali è stata specificata la frequenza della forma d’onda nel campo frequency e l’ampiezza (espressa in Volt) nel campo Amplitude o la potenza disponibile ai morsetti della porta stessa (espressa in dBm
(3)) nel campo Amplitude dBm.
L’ispezione dei risultati avviene con modalità analoghe a quelle descritte a proposito delle analisi precedenti. Può essere utile sottolineare che, per visualizzare direttamente altre forme d’onda senza ripetere la simulazione è sufficiente aprire la finestra Direct Plot seguita dall’opzione Transient Signal e terminare con il tasto ESC. Le funzionalità Print ed Annotate sono ancora attive.
Uno strumento molto utile, per osservare quali componenti frequenziali costituiscono lo spettro di una forma d’onda, è la funzione dft (Trasformata Discreta di Fourier), attivabile dal gruppo Special Functions del Calculator solo dopo aver effettuato la Tran. Il form per impostare la dft è evidenziato in Fig. 3.14.
( )3
dBm = 10 log ⋅ kX
, conX
espresso in mW.Fig. 3.14: Impostazione dell’analisi dft
3.3.4 PSS
L’analisi per grandi segnali PSS (Periodic Steady State) calcola direttamente la risposta allo stato stazionario periodico di un circuito. Per implementare tale analisi SpectreRF adotta una tecnica conosciuta come Shooting Newton Method [10-11]. Si tratta di un metodo iterativo di calcolo delle condizioni iniziali e finali, direttamente dall’osservazione dello stato stazionario. Questo algoritmo di calcolo presuppone che, nel corso dell’intervallo di shooting, tutti gli stimoli siano periodici e che il circuito fornisca una risposta periodica; altrimenti, se la rete non ammette una soluzione periodica, l’analisi PSS non converge. Inoltre, se il periodo scelto per condurre la PSS non è un multiplo intero del periodo usato dai generatori indipendenti di sorgente, SpectreRF termina l’analisi ed emette un messaggio di warning.
All’aumentare della complessità del circuito, aumenta il numero di iterazioni da effettuare e il numero di equazioni integro-differenziali da risolvere. Per questo motivo, spesso la convergenza è rallentata; sebbene con l’analisi PSS si riescano a trattare circuiti fortemente non-lineari o molto sofisticati. Con la PSS i tempi di simulazione risultano indipendenti dalle costanti di tempo del circuito, cosicché può essere calcolata facilmente la risposta a stato stazionario di circuiti con elevate costanti di tempo. Comunque, la caratteristica fondamentale è quella di permettere la determinazione dei livelli di armoniche di un segnale in funzione di un certo livello di potenza in ingresso o in funzione di segnali non monocromatici, rendendo così possibile la misura di punti di compressione ( CP ), distorsioni di intermodulazione (
1dB
IM3 ), punti di intercetta del terzo ordine ( IP3 ), ecc.
Inoltre, la PSS gioca un ruolo fondamentale per il calcolo, l’indagine e l’analisi della risposta di sistemi sollecitati con piccoli segnali periodici [9]. Infatti, dopo aver completato la simulazione della PSS, SpectreRF permette di valutare le funzioni di trasferimento per piccoli segnali o le prestazioni in termini di rumore di oscillatori, amplificatori, filtri e, in particolare, di circuiti che trattano segnali periodici e realizzano traslazioni di frequenze (tutte le tipologie di convertitori di frequenze). Dunque, tutti i circuiti progettati per le comunicazioni wireless devono essere simulati usando opportunamente questa tipologia di indagine. Le analisi periodiche per piccoli segnali PAC (Periodic AC analysis), PXF (Periodic Transfer Function analysis) e Pnoise (Periodic Noise analysis) sono simili alle analisi AC, SP, XF e Noise, ma possono essere applicate a circuiti che presentino punti di lavoro periodici. D’altra parte, le analisi AC, SP, XF e Noise sono analisi tradizionali, riferite cioè a circuiti eccitati con piccoli segnali; esse linearizzano il circuito attorno al punto di riposo costante nel tempo, lavorano su un modello tempo-invariante e la soluzione è calcolata usando il metodo fasoriale.
Le impostazioni della PSS cambiano in relazione al tipo di analisi che viene condotta congiuntamente ad essa. La tipica finestra di setting è mostrata in Fig. 3.15.
Fig. 3.15: Impostazione analisi PSS
Il simulatore analizza dapprima la PSS ed in base ai risultati ottenuti, prosegue
automaticamente nel calcolo delle analisi periodiche impostate nell’Affirma. Nel caso in cui
il software avesse un bug e non procedesse autonomamente a simulare nella sequenza corretta, occorrerà impostare manualmente l’ordine delle analisi da eseguire: prima la PSS e poi l’analisi periodica PXF. Tutto ciò può essere fatto tramite la finestra Environment (Fig.
3.16), alla quale si accede attraverso il menu Setup dell’Affirma.
Fig. 3.16: Finestra Environment
Anche l’esame dei risultati si conduce in maniera differente, sempre in base al tipo di misura che è stata impostata; comunque, è possibile salvare uno state con l’uscita da plottare solo dopo aver completato una simulazione. In ogni caso, il form per impostare il plotting dei risultati si attiva dal menu Results e verrà descritto nel dettaglio per ogni tipo di metrica.
3.3.5 PXF
Mentre una analisi AC convenzionale calcola la risposta del circuito verso qualsiasi
nodo a partire da un singolo stimolo, l’analisi PXF (Periodic Transfer Function) calcola le
funzioni di trasferimento fra ogni sorgente a qualsiasi frequenza, verso una singola uscita
ad una specifica frequenza. La particolarità consiste nel fatto che, a differenza del
tradizionale calcolo di funzioni di trasferimento in cui si valuta la relazione fra ogni
ingresso ed una uscita alla medesima frequenza, la PXF permette di lavorare con vari
stimoli di ingresso a qualsiasi frequenza. La PXF, pertanto, è lo strumento di simulazione con la quale si riesce a valutare gli effetti di una conversione di frequenza. Infatti, sia per i Mixer che per i moltiplicatori o i divisori di frequenza, la PXF calcola il Guadagno di conversione ( ), la reiezione della frequenza immagine ( ), il Power Supply Rejection Ratio (
G
c IRRPSRR ), gli isolamenti fra gli stimoli di ingresso e quelli di uscita (p. es.
LO ed RF feedthrough) ed altri ancora [9]. Come tutte le analisi periodiche eseguite con SpectreRF, è necessario lanciare l’analisi PXF contemporaneamente alla PSS. La selezione dell’analisi avviene ancora una volta dal menu Analysis ed appare come in Fig. 3.17.
(a) (b)
Fig. 3.17: Impostazione analisi PXF (a) e finestra Options (b)
3.3.6 Pnoise
L’analisi Pnoise è simile all’analisi tradizionale Noise; l’unica sostanziale differenza
consiste nel fatto che la Pnoise permette di valutare anche gli effetti di una conversione di
frequenza, in termini di rumore. Inizialmente, la PSS linearizza il circuito attorno al punto
di lavoro tempo-variante e calcola la risposta del circuito ad un ampio segnale (LO).
Mediante la successiva analisi Pnoise si apprezza in quale misura gli effetti del rumore influenzano le prestazioni del sistema. Infatti, nei sistemi periodici la Pnoise è in grado di valutare la media nel tempo dei contributi di rumore, sotto forma di densità spettrale di potenza in funzione della frequenza. Sono possibili anche misure relative al rumore riportato in ingresso, al rumore di uscita, alla
NF(Cifra di Rumore) o alla
F(Noise Factor). Nel calcolo dei parametri di rumore equivalenti è possibile includere i contributi dei generatori di ingresso e delle impedenze di carico. Questa analisi risulta efficiente anche nel caso di circuiti con molteplici segnali di rumore interni. Le finestre di impostazione e quella delle Options sono presentate in Fig. 3.18 (a) e(b), rispettivamente.
(a) (b)
Fig. 3.18: Impostazione analisi Pnoise (a) e finestra Options (b)
Se la convergenza risultasse problematica, occorrerà impostare opportunamente il campo tolerance all’interno del menu Options.
3.3.7 Parametric Analysis
L’analisi parametrica è un tool che permette di simulare un circuito al variare di una o
più variabili (sweeping parameter), ad es. il valore di una capacità, una corrente o un
parametro di modello, in un certo range. È possibile impostare il passo di analisi e il tipo di interpolazione dei punti intermedi. Il Plot produrrà una famiglia di curve.
Fig. 3.19: Impostazione analisi Parametrica
3.4 Metriche del Mixer in ottica Cadence
Le specifiche di progetto valutate nella prima fase di questo lavoro, sono state le linee guida durante la fase di design circuitale dell’intero schema. La verifica dei valori ottenuti è stata effettuata in maniera specifica e condotta con analisi mirate, in relazione al singolo parametro da valutare. In questa sezione viene indicato il modo di impostazione delle analisi e delle porte del circuito di testing per la simulazione delle quantità tipiche dei Mixer a Reiezione della frequenza Immagine, senza entrare, per ora, nel merito dei risultati ottenuti.
3.4.1 Caratteristiche dei dispositivi e polarizzazione
Nel flusso progettuale, il primo elemento da valutare è la corretta polarizzazione in DC dei dispositivi e la verifica dei valori scelti analiticamente. Questo tipo di controllo, utile fra l’altro anche al calcolo del consumo di potenza (Power Consumption ), è il più immediato fra tutti perché l’analisi DC non prevede particolari impostazioni, né elevati tempi di simulazione. Il prelievo dei risultati è già stato descritto.
Invece, una particolare attenzione va riservata all’impostazione dell’analisi
parametrica, utile nel plotting delle caratteristiche ingresso/uscita dei transistor. In questo
caso, al variare della tensione fra collettore ed emettitore ( V
CE) e per un certo valore di
corrente in base ( I
b) viene calcolato il valore della corrispondente corrente di collettore ( I
C); facendo variare anche la I
bsi ottiene la famiglia di curve cercata. Occorre perciò fare una parametrica con due termini variabili (V
CEnello Sweep1 ed I
bnello Sweep2 ), come mostrato nella Fig. 3.20.
Fig. 3.20: Analisi Parametrica per il calcolo delle caratteristiche
In partenza si assegna il primo valore alla variabile (nel riquadro Sweep1), intanto la
V
CEI
binizia ad assumere i valori nel range specificato; in seguito, la passa al secondo valore e così via fino ad esaurire tutte le combinazioni.
V
CE3.4.2 Impedenze di In/Out
Il calcolo delle impedenze viste ai terminali di un quadripolo generico si effettua mediante una analisi AC. Per valutare la del sistema, si disattivano le porte LO ed RF e si imposta per l’analisi AC la porta di uscita (Fig. 3.21). Ai fini dell’analisi AC, la porta RF (vale anche per LO) viene disattivata semplicemente impostando il campo Source Type con il valore DC, anziché con sine. L’impostazione della porta di uscita
Z
OUT( )4
è quella tipica per il funzionamento della AC; la frequenza f
OUTè pari a 1.1GHz ed è modificabile direttamente dall’Affirma (Editing Design Variables).
( )4
Uscita rispetto al circuito complessivo, ma è da considerarsi di ingresso ai fini del calcolo dell’impedenza vista.
Fig. 3.21: Porte RF ed LO (a), porta di uscita (b) per il calcolo di Z
OUTIl Mixer progettato in questo lavoro di tesi può essere considerato come un sistema a due ingressi, differenziali (LO ed RF), ed una uscita, anch’essa differenziale, IF. Pertanto, mentre il calcolo della Z
OUTè univoco e non induce in confusione, la valutazione della Z
INdeve essere fatta specificando l’ingresso a cui ci si riferisce. Supponendo di considerare l’ingresso del segnale RF proveniente dal Low Noise Amplifier (LNA), il calcolo della Z
INricalca il precedente, lasciando attivo il solo generatore di segnale RF e disattivando sia la porta LO che la porta di uscita a IF. Con entrambi i segnali, RF ed LO, attivi non si sarebbe potuta usare l’analisi AC per la valutazione delle impedenze.
Per entrambe le impedenze, è possibile ricavare l’espressione analitica usando il
Calculator. L’impostazione dell’analisi AC prevede che vengano specificati i campi: Sweep
Variable (che indica il parametro variabile), Sweep Range i cui valori Start-Stop
determinano il range di variabilità della frequenza (valori usati per RF: 4GHz-6GHz), lo
Sweep Type (generalmente Linear) e il numero di passi (Number of Steps). Queste
impostazioni sono riassunte in Fig. 3.22 .
Fig. 3.22: Impostazione analisi AC per il calcolo di Z
IN_RFNella totalità delle analisi svolte, vista la semplicità computazionale della AC, non è stato necessario impostare i campi della finestra Options. Il prelievo e l’indagine dei risultati ricalcano i casi generali già illustrati durante la descrizione particolareggiata dell’analisi AC.
3.4.3 Andamento nel tempo dei segnali
Per osservare l’andamento nel tempo dei segnali in un qualsiasi punto del circuito, si deve eseguire una analisi in transitorio. L’esame delle forme d’onda può essere un valido strumento per evidenziare eventuali errori o malfunzionamenti.
L’impostazione dell’analisi Tran prevede che venga settato un range di osservazione opportuno; vale a dire, non si ottiene un risultato accettabile se Stop Time è impostato con un valore per cui il circuito non ha ancora raggiunto la condizione di regime. L’esperienza ha mostrato che il transitorio possa essere considerato concluso dopo 50ns; pertanto, il valore scelto per le simulazioni è stato fissato a 60ns e con un’accuratezza elevata (Moderate o Conservative), visti anche i brevi tempi di simulazione necessari per terminare l’analisi.
I generatori di segnale LO ed RF sono entrambi attivi (sine nel campo Source Type e rispettivi valori di frequenza nel campo Frequency) e impostati per l’analisi Tran (campo Amplitude dBm con gli opportuni valori).
Nella Fig. 3.23 sono mostrate, rispettivamente, la finestra di analisi (a) e la scelta dei
parametri delle porte di ingresso RF (b). Considerazioni analoghe valgono per la porta LO.
(a) (b)
Fig. 3.23: Impostazione analisi Tran (a), impostazione segnali RF ed LO (b) Le metodiche riguardanti il plotting dei risultati e il miglioramento della convergenza, utilizzano le considerazioni generali descritte in precedenza.
Invece, il range di visualizzazione dell’analisi dft cambia in funzione del valore scelto come Stop Time. La finestra delle impostazioni è riportata in Fig. 3.24 .
Fig. 3.24: Impostazioni per la dft
È utile osservare che nella finestra Waveform dei risultati, l’asse delle ascisse non è funzione del tempo, ma delle frequenze.
3.4.4 Linearità (CP
1dB)
Per un circuito fortemente nonlineare quale il Mixer, è di fondamentale importanza
valutare il range di funzionamento lineare; in particolare, il CP
1dBdetermina il limite
superiore di potenza del segnale di ingresso a RF, applicabile senza introdurre distorsioni.
I generatori di segnale di ingresso (sinusoidali) dovranno avere il campo Amplitude (dBm) impostato con il valore simbolico o, equivalentemente con il valore numerico opportuno; nel nostro caso: vrf (pari a -30dBm) e vol ( pari a -2dBm), rispettivamente per le porte RF ed LO. Tali parametri saranno usati come sweep dal simulatore.
I toni RF ed LO appariranno esplicitamente nella finestra di analisi; inoltre, nel campo Beat Frequency dovrà essere presente un sottomultiplo della IF (50MHZ è il MCD fra RF ed LO: la pss tratta segnali multipli fra loro). Il numero di armoniche di uscita è stato scelto pari a 30. L’accuratezza è preferibile che sia Moderate, per evitare di allungare i tempi di simulazione; non si sono comunque evidenziate differenze sostanziali nei risultati impostando Conservative. In caso di rallentamento della convergenza, conviene impostare il campo tstab con 10n. Il parametro variabile (vrf) parte dal valore -30dBm ed arriva a 5dBm, lo sweep avviene in 12 passi ed in maniera lineare. La finestra di analisi PSS per il calcolo del punto di compressione è riportata in Fig. 3.25.
Fig. 3.25: Finestra PSS per il CP1dB
Per graficare il punto di compressione, si seleziona Direct Plot, quindi Pss dal menu Results dell’Affirma e, a questo punto, si sceglie 1dB compression point. La finestra successiva permette di valutare nel modo desiderato il CP
1dB, sia di ingresso che di uscita ( ICP1dB ed O , rispettivamente). Il punto di partenza del risultato grafico (extrapolation point) dovrà essere almeno pari al livello di potenza del segnale di sweep;
CP1dB
nel nostro caso, è pari a -30dBm in quanto è il segnale RF a variare. Questo valore indica il punto di intersezione fra la curva di amplificazione ideale e l’uscita. Analoghe considerazioni valgono per il livello finale. Nel campo 1st Order Harmonic occorre illuminare la prima armonica (nel nostro caso, 50 MHz); tale valore, moltiplicato per il numero di armoniche scelto, determina l’intervallo frequenziale di visualizzazione (range IF). Ancora una volta è possibile salvare queste impostazioni nello state, selezionando Append. Nella finestra di visualizzazione dei risultati (Fig. 3.26) è necessario selezionare il nodo di uscita.
Fig. 3.26: Finestra per graficare il CP
1dB3.4.5 Linearità (IP3)
Per il computo del punto di intercetta per le distorsioni di intermodulazione del terzo ordine si procede analogamente a quanto fatto per il CP
1dB, con la sola eccezione che stavolta occorre usare due toni frequenziali differenti per il segnale RF. Il secondo tono simula un eventuale disturbo, ed è scelto in modo tale che le distorsioni cadano nella banda 5.15-5.35 GHz. Le possibili distorsioni del terzo ordine saranno: 2 ω ω
1−
2, oppure
2 ω ω
2−
1e, visto che f
RF= 5.25 GHz ω
RF= ω
1≅ 33Grad/s , risulta ed (dunque,
fRF_2 =5.2 GHz
RF_1 RF_2
f =f +50MHz fRF_1=fRF
). L’ampiezza del secondo tono dovrà essere
uguale a quella scelta per f
RF_1; ossia, Amplitude dBm pari a -30 ( oppure vrf se la si imposta
simbolicamente ). Il calcolo dell’IIP3 (o dell’OIP3) del Mixer, è ancora più oneroso del
CP
1dB; pertanto, per evitare inutili sprechi di tempo e non convergenze dell’analisi stessa, si
può effettuare la simulazione con un’accuratezza liberal ed eventualmente impostare nel menu Options il parametro tstab=10 ns e ridurre il valore reltol da 10
-4a 10
-5. Questo tipo di analisi può richiedere anche diverse ore per completare la simulazione; è fondamentale, pertanto, il numero di punti scelto, il grado di accuratezza e anche l’hardware del pc usato.
In Fig. 3.27 sono riassunti tutti i valori precedenti.
Fig. 3.27: Calcolo dell’IIP3
Per la visualizzazione del risultato grafico, si procede selezionando IPN Curves ed immettendo -30dBm nel campo vrf ranges, ed illuminando 1.15GHz nella casella 3rd order Harmonics ed 1.1GHz nella casella 1st order Harmonics; dalla stessa finestra si sceglie la porta di uscita. La finestra delle impostazioni per il plotting è simile a quella del CP
1dB.
3.4.6 Conversion Gain
Uno dei parametri più importanti nella progettazione del Mixer è sicuramente il Conversion Gain. Come già accennato, il suo calcolo avviene lanciando simultaneamente le analisi PSS e PXF (l’ordine di impostazione non è rilevante: il simulatore esegue comunque prima la PSS e poi sfrutta i risultati ottenuti per valutare il G
ccon la PXF).
Questa metrica richiede che sia attiva soltanto la porta LO, mentre il segnale RF venga
disattivato; la Fig. 3.28 mostra le impostazioni delle due porte.
Fig. 3.28: Porte RF ed LO per il calcolo del G
CSiccome è attivo solo il segnale dell’Oscillatore Locale, nel campo Beat Frequency della finestra della PSS compare solo la frequenza LO, il Number of Harmonics dovrà essere 0 e l’accuratezza può essere moderate (o anche conservative).
(a) (b)
Fig. 3.29: PSS (a) e PXF (b) per il calcolo del G
CLa PXF permette di scegliere Frequency Sweep Range ( relativa alla IF, e quindi 10M-
1.5GHz ), il Number of Steps (pari a 30, in Linear), il parametro Maximum Sideband (pari a
3) ed il riferimento di uscita (nodo con la porta IF collegata a massa). Le impostazioni
descritte sono raffigurate in Fig. 3.29 (a) e (b), rispettivamente. I tempi di simulazione sono veloci e non si riscontrano difficoltà di convergenza.
Per plottare i risultati selezionare l’opzione PXF dalla finestra di visualizzazione PSS nel menu Direct Plot; a questo punto, spuntare Voltage Gain, Sideband, dB20 e selezionare la sorgente (RF) dallo schematico. Tutti questi parametri sono visualizzati in Fig. 3.30.
Fig. 3.30: Finestra per graficare il G
C3.4.7 Reiezione della frequenza immagine
La valutazione della reiezione della frequenza immagine può avvenire in due modi distinti: uno, piuttosto empirico, prevede l’uso dell’analisi transitoria o della AC, l’altro utilizza le analisi PSS e PXF.
Con il primo metodo si effettua prima l’analisi del circuito (p. es. il filtro polifase, o stadi sui quali è possibile usare le analisi Tran ed AC) con il tono a RF correntemente utilizzato, successivamente si imposta l’ingresso con il tono immagine. Dal confronto delle due analisi si deducono gli effetti della frequenza immagine sul circuito. Le impostazioni delle analisi ricalcano quelle già descritte per la Tran e la AC. Questo modo di procedere è stato usato in fase di progettazione dei filtri polifase.
L’altro metodo ricorre all’analisi PXF; in particolare, sullo stesso grafico si valuta il
conversion gain alle frequenze f
RFed f
IFper le terminazioni di uscita: la reiezione si ottiene
effettuando la differenza fra il valore letto alla frequenza f
RFe quello relativo alla frequenza f
imm, ottenendo il valore in dB.
3.4.8 Rumore
Questa tipologia di analisi segue un procedimento del tutto analogo a quello usato per la valutazione del . Infatti, per le porte di ingresso e di uscita rimangono valide le impostazioni usate per l’analisi PXF. La cifra di rumore misurata è del tipo DSB (Double Side-Band Noise). Ancora una volta, l’analisi PSS deve precedere la Pnoise; l’unica eccezione è che non occorre impostare alcuno sweep, ma soltanto i campi Beat Frequency (4.15GHz), Number of Harmonic (con il valore 0) e l’accuratezza (moderate o conservative). La finestra della Pnoise differisce dalla PXF soltanto nei valori Maximum Sideband (stavolta pari a 30) e Reference Sideband
G
c( )5
(pari a +1). Questi parametri sono riportati in Fig. 3.31 .
Fig. 3.31: Finestra per l’analisi Pnoise ( NF DSB )
( )5
Il valore da immettere è +1 nel caso si tratti di una conversione in basso, -1 per un mixer upconverter e 0 per conversioni in banda base.
I tempi di simulazione non sono influenzati dall’elevato numero di sorgenti di rumore presenti nel circuito. La procedura per il plotting dei risultati è simile a quella condotta per il G
c; le impostazioni sono riepilogate in Fig. 3.32 .
Fig. 3.32: Finestra per graficare NF
3.4.9 Isolamenti
Per valutare gli isolamenti è sufficiente usare la stessa analisi PXF, settata p.es. per la determinazione del (in realtà non occorre rilanciare la simulazione ma si può sfruttare la precedente finestra dei risultati). Infatti, nella finestra per il plotting dei risultati bisogna spuntare il box Replace e nello schematico selezionare V
G
cCC