Download Document

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Chirp spectrum wikipedia , lookup

Utility frequency wikipedia , lookup

Immunity-aware programming wikipedia , lookup

Heterodyne wikipedia , lookup

Mathematics of radio engineering wikipedia , lookup

Sound level meter wikipedia , lookup

Multidimensional empirical mode decomposition wikipedia , lookup

Scattering parameters wikipedia , lookup

Dither wikipedia , lookup

Rectiverter wikipedia , lookup

Two-port network wikipedia , lookup

White noise wikipedia , lookup

Transcript
Agenda
DAY
2
Synopsys 60-I-032-BSG-005
4
S-Parameters and Linear Analysis
5
Transmission Lines and Field Solver
6
IBIS
© 2007 Synopsys, Inc. All Rights Reserved
4- 1
Unit Objectives
After completing this unit, you should be able to:

Use linear analysis to extract network
parameters

Use S-elements
4- 2
S-Parameter Basics

S (or scattering) parameters is another way to describe a
linear multi-terminal network

The independent variables are the injection wave (a) and
the reflection wave (b)

(a) and (b) are column vectors while (S) is a square
matrix consists of reflection coefficients sij:





(b) = (S)(a)
ai is the normalized injection wave of port i
bi is the normalized reflection wave of port i
sij = bi/aj when matched impedances are connected to the
ports other than port j
sii = bi/ai when matched impedances are connected to the
ports other than port i
4- 4
3
Two-Port Scattering Parameters
s21
s11
Black
box
s22
s12

S11 = input reflection coefficient

S21 = forward transmission coefficient (gain)

S12 = reverse transmission coefficient (isolation)

S22 = output reflection coefficient

S-parameter matrix:
 s11 s12 

S  
 s21 s22 
4- 6
4
Linear Multi-Port Parameter Analysis

A linear N-port network is completely characterized at
each frequency by a complex NxN signal-transfer
matrix and a complex NxN noise correlation matrix

The .LIN analysis will automatically extract these
matrices for a multi-port network and make available a
broad set of derived measurements (makes .NET
obsolete)

This analysis will internally compute


Full S-parameter matrix

Noise parameters (reduced to 2-port)
P1
b=Sa
P2
Requires identification of the port terminals

Use new “P” port element
4- 8
5
Linear Characterization


HSPICE capable of extracting:

[S], [Y], [Z], [H] parameters, VSWR

Noise parameters (with correlation)

Maximum, available, and associated gains

Stability factors

Impedance matching coefficients
Output file formats

Sc0, TouchStone, CITIFILE
4- 10
6
Port (P) Element

Identifies the ports used in .LIN analysis

Behaves as either a noiseless resistance or a voltage
source in series with the port impedance for all
analyses types

Each port number must be a unique number

No shared ports

Port numbers must be sequential

Each port has an associated system impedance, Z0


If not specified, Z0=50
The system impedance can be overridden for a specific
analysis type using the keywords rdc, rac, or rtran
4- 12
7
Port Element Syntax

Pxxx p n port=number
+ <dc mag> <ac <mag <phase>>>
+ <one tran waveform>
+ <zo=val> <rdc=val> <rac=val>
+ <rtran=val>

Examples:
P1 in 0 port=1 ac=1
p2 out 0 port=2
4- 14
8
.LIN Analysis Syntax

.LIN <sparcalc = [1|0] <modelname = …>
+ <filename = …>
<format=[selem|citi|touchstone]>
+ <noisecalc = [0|1]> <gdcalc = [0|1]>>

Examples:
.LIN sparcalc=1 modelname=custom
+ filename=cad1 format=touchstone
+ noisecalc=1 gdcalc=1
.LIN sparcalc=1 modelname=bpf
+ format=selem
4- 16
9
.LIN Keywords

Sparcalc


Modelname


S element (.sc#) file, citi file format, touchstone format
Noisecalc


Output filename (default is the netlist name)
Format


Model name in the .model statement listed in the .sc# file
Filename


Calculate S-parameters (default=1)
If 1, extract 2-port noise parameters (default=0)
Gdcalc

If 1, extract group delay analysis (default=0)
4- 18
10
HSPICE Linear Characterization


Setup as .AC
swept frequency
analysis
P1
LNA
P2
Add port elements *HSPICE Linear LNA Analysis

Add .LIN
command

Several new .LIN
measurements
then available
*…
P1 in gnd port=1 z0=50
xLNA in out LNA
P2 out gnd port=2 z0=50
.AC LIN 101 100MEG 10G
.LIN noisecalc=1
.PROBE AC S11 S12 S21 S22
.PROBE AC NFMIN RN GAMMA_OPT
Dumps *.sc0 data file with
Scattering and noise parameters
4- 20
11
.LIN Parameter Definitions (1/4)

Network Parameters

S - scattering parameters

Y - admittance parameters

Z - impedance parameters

H – hybrid parameters


1 and 2 port only, derived from S-parameters
If more than 2 ports, ports numbered 3 and above are
terminated in their port characteristic impedance
4- 22
12
.LIN Parameter Definitions (2/4)



Optimum Matching for Noise Parameters

ZOPT - source impedance which achieves minimum noise

YOPT - source admittance which achieves minimum noise
Noise Figure

NF - noise figure

NFMIN - noise figure minimum (source at ZOPT)
Group delay

T, TD - group delay from port=1 to port=2
4- 24
13
.LIN Parameter Definitions (3/4)

Noise correlation



RHON - Correlation coefficient between the input noise
voltage and the input noise current
Equivalent noise resistance and conductance

RN - noise equivalent resistance

GN - noise equivalent conductance
Noise correlation impedance and admittance

ZCOR - Noise correlation impedance

YCOR - Noise correlation admittance
4- 26
14
.LIN Parameter Definitions (4/4)

Stability Parameters



K_STABILITY_FACTOR - Rollett stability factor
Gain Parameters

G_AS - associate gain - maximum gain at the minimum noise
figure

G_MAX - maximum available/operating power gain
Matching for optimum gain parameters

GAMMA_S_OPT - source reflection coefficient which achieves
maximum available power gain

GAMMA_L_OPT - load reflection coefficient which achieves
maximum operating power gain
4- 28
15
Introduction to Noise Analysis (1/3)

Random disturbance signal in circuit

Device noise is noise from circuit elements
(random/stochastic)


Flicker Noise

Thermal Noise

Shot Noise
Interference noise is noise from circuit environment

Ground bounce

Crosstalk

Substrate noise
4- 30
16
Introduction to Noise Analysis (2/3)

Device noise models are native to HSPICE devices

.LIN and .AC analysis are used to perform the noise
analysis

Noise is modeled in frequency domain (FD)




Noise amplitude is random in time domain (TD)
Noise power is finite if signal is bandwidth limited
Power Spectral Density (PSD) in FD
HSPICE and SPICE random device noise models are
not evaluated with .TRAN analysis
4- 32
17
Introduction to Noise Analysis (3/3)

Two types of PSD profiles for
standard noise sources

Bandwidth limited where power
concentrated in a frequency range


Flicker noise
Flat power distribution across all
frequencies (white noise)


Thermal noise
Shot noise
4- 34
18
Noise Representation (1/2)

Total power of a noise signal is the integral of the PSD
function with respect to frequency

Vrms of the noise signal represent RMS of average
power carried by a noise source in a 1-Hz bandwidth
around f with 1 normalized load

Reference noise signal to input sinusoidal signal

Noise limits the smallest input signal the circuit can handle

Allow a fair comparison of different circuit topology
4- 36
19
Noise Representation (2/2)

HSPICE noise calculation based on AC nodal voltages

HSPICE calculates the noise generated in each device
and its contribution to the noise output

Total output noise voltage is the RMS sum of the
individual noise sources
4- 38
20
Noise Types (1/3)

Thermal Noise

Random movements of electrons in a conductor

Independent of DC current (resistor only)

Proportional to temperature

Gaussian amplitude distribution, Independent of frequency,
white spectrum
4- 40
21
Noise Types (2/3)

Shot Noise

Random passage of electrons and holes across a potential
barrier (P-N junction)

Dependent of DC current

Proportional to DC bias current

Gaussian amplitude distribution, independent of frequency,
white spectrum
4- 42
22
Noise Types (3/3)

Flicker Noise (1/f Noise)

Fluctuations in the average current travel time in a conductor

Dependent of DC current

Native to all active devices

Manufacturing process related

Non-Gaussian amplitude distribution, Dependent of
frequency, pink spectrum
4- 44
23
Noise Calculation Example

Setup as .AC
swept frequency
analysis

Add port
elements

Add .LIN
command with
noisecalc=1

Several new .LIN
measurements
then available
* A Common Source NMOS amplifier
.options list post
.model n_tran nmos level=49
version=3.22 AF=.826 KF=4e-29
vdd vdd 0 DC=5
p1 in 0 port=1 ac=0.1 dc=2.1 z0=50
p2 out vdd port=2 z0=20k
rs in g1 50
m1 out g1 0 0 n_tran l=1.5u w=40u
.ac dec 10 10Meg 10G
.lin noisecalc=1
.print ac v(out) onoise
.end
Dumps *.sc0 data file with
Scattering and noise parameters
4- 46
24
S-Element


Two types of S-element are supported:

S-parameter

Y-parameter
Y-parameter is the traditional admittance matrix for a
multi-terminal network:
(I)=(Y)(U)

(I) is a column vector representing the current of each port

(U) is a column vector representing the voltage of each port

(Y) is the admittance matrix of the multi-terminal network
4- 48
25
S-Element Syntax
Sxxx nd1 nd2 ... ndN nd_ref
+ <MNAME = S_model_name>
<FQMODEL=sp_model_name>
+ <TYPE=[S|Y]> <INTDATTYP =[RI|MA|DBA]>
+ <Zo=[value|vector_value]>
+ <FBASE=base_frequency>
<FMAX=maximum_frequency>
+ <PRECFAC=val>
+ <DELAYHANDLE=[1|0|ON|OFF]> <DELAYFREQ=val>
+ <INTERPOLATION=STEP|LINEAR|SPLINE>
+ <HIGHPASS=[3|2|1|0]> <LOWPASS=[2|1|0]>
+ <DTEMP=val>
+ <NOISE=[1|0]>
4- 50
26
S-Element Rules

The only required field is the nodes and must be defined
before any optional parameters

If MNAME is not specified, FQMODEL must be set

The optional arguments may come in any order

All the optional parameters except MNAME may be set in
both the S-element statement and the S model statement

Parameters in the element statement have higher priority
4- 52
27
S-Element Keywords (1/4)

nd1 nd2 … ndN: N signal nodes

nd_ref: reference node

MNAME: S model name

FQMODEL: SP model name

TYPE: parameter type
 S: scattering parameter, default
 Y: Y parameter

Zo: characteristic impedance value of the reference line
 Default is 50 ohms

TSTONEFILE: name of the Touchstone file containing
frequency-dependent data
 Touchstone file must follow the file extension rule:
filename.s#p, where # represents the dimension of the
network

CITIFILE: Name of the citifile containing frequency
dependent data
4- 54
28
S-Element Keywords (2/4)

FBASE: Base frequency used for transient analysis



Default value of FBASE is reciprocal value of the transient period
(1/TSTOP)
S-parameters are converted in to time domain for transient analysis
using IFFT (Inverse Fast Fourier Transform)
FBASE is the sampling frequency


Lower values of FBASE will give more accurate results but, will increase
simulation time
Samples taken at f=0, FBASE,2*FBASE, 3*FBASE …, N*FBASE
– where N*FBASE < FMAX



Interpolation and extrapolation are used to obtain the sampled
frequency points
If the S-parameter file contains a sufficient number of points, there will
be no error introduced in the IFFT
If FBASE is set smaller than the reciprocal value of the transient
period, the transient analysis will perform circular convolution, with the
reciprocal value FBASE as the base period
4- 56
29
S-Element Keywords (3/4)

FMAX: Maximum frequency used in transient analysis




INTDATTYP: Data type for the linear interpolation of
the complex data




Maximum frequency point for Inverse Fourier Transformation
The default value of FMAX is reciprocal of the rise time of the
voltage source used in the transient analysis
During the transient analysis, extrapolation is performed if sufficient
frequency range is not specified in the S-parameter file
RI – real, imaginary
MA – magnitude, angle
DBA – magnitude in dB, angle
PRACFAC: Precondition factor


Precondition is used to avoid infinite admittance matrix
Default = 0.75 (good for most cases)
4- 58
30
S-Element Keywords (4/4)

DELAYHANDLE: Delay handler





DELAYFREQ: Delay frequency





Activates the measurement of group delay for transmission-line type
parameters
Group delay is the rate of change of phase with frequency, d/df
DELAYHANDLE = ON (or 1) to turn on delay handle
Default = OFF(or 0)
Sets the frequency point at which finite difference computation of group
is carried out when DELAYHANDLE=1
Default = FMAX (good for most cases)
If the S-parameter file contains noisy data around the maximum
frequency range, numerical errors may occur, then set DELAYFREQ to a
value lower than FMAX
If DELAYHANDLE is set OFF but, DELAYFREQ is nonzero, the S-element
will be simulated in delay mode
INTERPOLATION: The interpolation method



STEP: piecewise step
LINEAR: piecewise linear
SPLINE: b-spline curve fit
4- 60
31
S-Element Keywords (5/5)

HIGHPASS: Method to extrapolate higher frequency points





LOWPASS: Method to extrapolate lower frequency points




0: cut off
1: use the magnitude of the lowest point
2: perform linear extrapolation using the magnitude of the lowest
two points
DTEMP - Temperature difference between the element and
the circuit in degrees Celsius


0: cut off
1: use highest frequency point
2: perform linear extrapolation using the highest 2 points
3: apply the window function to gradually approach the cut-off level
(default)
Default=0
NOISE – Activate or de-activate thermal noise


Noise=1 – The element will generate thermal noise (default)
Noise=0 – The element will be considered noiseless
4- 62
32
S-Parameter Model Syntax
.MODEL Smodel_name S <N=dimension>
+ [FQMODEL=sp_model_name|TSTONEFILE=filename|
+ CITIFILE=filename]
+ <TYPE=[S|Y]> <Zo=[value|vector_value]>
+ <FBASE=base_frequency>
+ <FMAX=maximum_frequency> <PRECFAC=val>
+ <DELAYHANDLE=[1|0|ON|OFF]> <DELAYFREQ=val>

Smodel_name, S, and, FQMODEL are required

Only one model type, FQMODEL, TSTONEFILE or,
CITIFILE should be specified

If more than one method is specified, the first one will
be used and a warning message will be issued
4- 64
33
SP Model Syntax
.model modelname sp [N=val FSTART=val FSTOP=val
+ NI=val SPACING=val MATRIX=val VALTYPE=val
+ INFINITY=matrixval DC=matrixval
+ INTERPOLATION=val EXTRAPOLATION=val]
+ [DATA=(npts …)] [DATAFILE=filename]

SP models are generated when the default format is
used for linear analysis

The *.sc0 file will contain .model lines for both SP
model and S model
4- 66
34
SP Model Keywords (1/3)

N: Matrix dimension (# of terminals), default=1

FSTART: starting frequency, default=0

FSTOP: final frequency (use for LOG or LIN spacing)

NI: number of frequency points per interval (only for
DEC and OCT spacing)

Npts: number of data points

SPACING: Data sample spacing format:





LIN: uniform spacing
OCT: octave variation
DEC: decade variation
LOG: logarithmic spacing
POI: nonuniform spacing
4- 68
35
SP Model Syntax (2/3)


MATRIX: Matrix (data point) format:

SYMMETRIC: symmetric matrix, default

HERMITIAN: similar to symmetric but off-diagonal terms are
complex-conjugate of each other

NONSYMMETRIC: A full matrix is specified
VALTYPE: data type of matrix elements:

REAL: real entry

CARTESIAN: complex number in real/imaginary format, default

POLAR: complex number in polar format (angles in radians)

INFINITY: Data point at infinity, not counted in number of points

DC: Data point at frequency=0, not counted in number of points:

Required to specify INFINITY for L&C

Required if there is no data point at frequency=0
4- 70
36
SP Model Syntax (3/3)



INTERPOLATION: interpolation scheme:

STEP: piecewise step (default)

LINEAR: piecewise linear

SPLINE: use B-spline
EXTRAPOLATION: extrapolation scheme:

NONE: no extrapolation is allowed

STEP: the last boundary point is used (default)

LINEAR: linear extrapolation using last two points
DATA: specifies data points:

LINEAR, OCT, DEC case: data=npts d1 d2 …

POI case: data=npts f1 d1 f2 d2 …
4- 72
37
SP Model Example

Example of a SP Model File:
.MODEL fmod sp N=3 FSTOP=30MegHz
+ DATA= 2
+ 1.0 0.0
+ 0.0 0.0 1.0 0.0
+ 0.0 0.0 0.0 0.0 1.0 0.0
+ 0.97409 -0.223096
+ 0.00895303 0.0360171 0.964485 -0.25887
+ -0.000651487 0.000242442 0.00895303
+ 0.0360171 0.97409 -0.223096

Values are expressed as real, imaginary
4- 74
38
Using S-Parameters Example
* run S-element in time domain
.option post
.tran 1n 80n
Vin in
0 DC=1v AC=1v pulse(0 1 0 5n 5n 10n 40n)
***** original circuit (for comparison) *****
L1 inOrg outOrg
C1 outOrg 0
5n
100p
Rin in inOrg 50
Rout outOrg 0 50
***** S-parameter representation *****
S1 s1in s1out 0 mname=Smodel
.MODEL Smodel S TSTONEFILE=lc.s2p TYPE=S FMAX=5e10
Rin1 in s1in 50
Rout1 s1out 0 50
.end
4- 76
39
Mixed Mode S-Parameters
Coupled transmission line schematic
port 1
port 2
i1
i2
Line A
V1
V2
i3
i4
Line B
V3
V4
4- 78
40
Mixed Mode Port Element

Required to extract mixed mode S-Parameters

.LIN internally sets the necessary drive mode
(common/differential)

For analyses other than the .LIN analysis, acts as a
differential driver

Positive nodes with half of their specified voltage

Negative nodes with a negated half of the specified voltage
4- 80
41
Extracting Mixed-Mode S-Parameters (1/3)

New keyword in the .LIN command

.LIN …

+ [ mixedmode2port = dd|dc|ds|cd|cc|cs|sd|sc|ss ]
4- 82
42
Extracting Mixed-Mode S-Parameters (2/3)

To print or probe parameters
 S|Y|Z<xy>nm<(t)>
 xy defines the port type






If xy is not specified, the value of mixedmode2port will
be used
nm is the port number
(t) is the type


D – differential
C – common
S – single-ended
dB, m, p, r, i
Print/Probe Format Examples
.print sdd11(db) sdd21(db) sdd22(db)
.print zds11(m) zds22(m)
.print yss11(m) yss22(m)
4- 84
43
Extracting Mixed-Mode S-Parameters (3/3)

Default and available values for mixedmode2port keyword
depends on port configuration

For both port 1 and port 2 single ended



For both port 1 and port 2 balanced



Available keywords: dd,cd,dc,cc
Default: dd
For port 1 balanced and port 2 single



Available keyword: ss
Default: ss
Available keywords: ds,cs
Default: ds
For port 1 single and port 2 balanced


Available keywords: sd,sc
Default: sd
4- 86
44
Mixed Mode S-Parameter Example
*Mixed Mode S-Parameter
Example:
*Network
X1 in1 in2 out1 out2 0 diffnet
*Define Ports
P1 in1 in2 0 ac=1 Zo=50 port=1
P2 out1 out2 0 Zo=50 port=2
*Define .AC and .LIN
.ac lin 1000 1e7 1e10
.lin format=touchstone mixedmode2port=dd
:
.end
4- 88
45
Mixed-Mode S-Parameter Example Results (1/2)
In the S-parameter file, the following parameters
are calculated at each frequency
! S(1,1) = SDD(1,1)
! S(1,2) = SDD(1,2)
! S(1,3) = SDC(1,1)
! S(1,4) = SDC(1,2)
! S(2,1) = SDD(2,1)
! S(2,2) = SDD(2,2)
! S(2,3) = SDC(2,1)
! S(2,4) = SDC(2,2)
! S(3,1) = SCD(1,1)
! S(3,2) = SCD(1,2)
! S(3,3) = SCC(1,1)
! S(3,4) = SCC(1,2)
! S(4,1) = SCD(2,1)
! S(4,2) = SCD(2,2)
! S(4,3) = SCC(2,1)
! S(4,4) = SCC(2,2)
4- 90
46
Mixed-Mode S-Parameter Example Results (2/2)

If you add the following statement to the netlist
.print sdd11(db) sdd21(db) sdd22(db)

Results
freq
sdd11
sdd21
db
sdd22
db
db
1.0000e+07
-3.121e+01
-2.542e-01
-3.121e+01
2.0000e+07
-2.969e+01
-3.022e-01
-2.969e+01
3.0000e+07
-2.825e+01
-3.420e-01
-2.825e+01
4.0000e+07
-2.691e+01
-3.784e-01
-2.691e+01
5.0000e+07
-2.572e+01
-4.131e-01
-2.572e+01
4- 92
47
Using Mixed Mode S-Parameters (1/2)

S-element syntax
Sxxx p1+ <p1-> p2+ <p2-> ref mname=Smodel

Rules

Pn+ and pn- are the positive and negative terminals of the
port n, respectively

If the port is mixed mode (balanced) then, both positive and
negative terminal names are required

If the port is single ended then, only one terminal name is
required

The port numbers must be in increasing order corresponding
to the S-matrices notation
4- 94
48
Using Mixed Mode S-Parameters (2/2)

S-model syntax



.model Smodel S … [mixedmode=<0|1>]
+ [datatype=XiYjZk]
Keywords

Mixedmode – Sets type of S-parameter representation to
use



1 – Mixed mode S-parameters
0 – (default) Standard S-parameters
Datatype – A string that defines the order of indices of the
incident/reflected vectors (a and b)


Default datatype is a 2 balanced port network, D1D2C1C2
The string must be an array of letter and number pairs, “Xn”
– ‘X’ = ‘D’ or ‘d’ indicates differential term
– ‘X’ = ‘C’ or ‘c’ indicates common term
– ‘X’ = ‘S’, ’s’, ‘G’ or ‘g’ indicates single (grounded) term

‘n’ = port number
4- 96
49
Lab 4: Using .LIN and S-Parameters
During this lab, you will:
45 minutes
1. Use the .LIN
command to extract
S-parameters.
Extract S-parameters
Use S-element
2. Simulate a circuit
containing an Selement.
3. Use the .LIN
command to extract
noise parameters
4- 98
50