Tawna Wilsey Bloghttps://community.cadence.com/search?q=*%3A*&category=blog&users=2893&sort=date%20descSearch results for '*:*' by user ID 2893en-USZimbra Community 8noSearch results for '*:*' by user ID 2893Subscribe with My Yahoo!Subscribe with NewsGatorSubscribe with My AOLSubscribe with BloglinesSubscribe with NetvibesSubscribe with GoogleSubscribe with PageflakesDistortion Summary in New CDNLive YouTube Video and at IEEE IMS2014 Next Week!http://feedproxy.google.com/~r/cadence/community/blogs/2893/~3/sXoHCRT5itA/distortion-summary-in-youtube-video-and-at-ieee-ims2014-next-weekFri, 30 May 2014 21:12:00 GMT75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:1334711Tawna/cadence_blogs_8/b/rf/archive/2014/05/30/distortion-summary-in-youtube-video-and-at-ieee-ims2014-next-week0Hi Folks, Check out this great new video on YouTube: CDNLive SV 2014: PMC Improves Visibility and Performance with Spectre APS In this video from CDNLive Silicon Valley 2014, Jurgen Hissen, principal engineer, MSCAD, at PMC, discusses an aggressive RF design with distortion problems in the lab, and how a solution was developed in collaboration with Cadence® FAEs using the distortion summary feature in Cadence Spectre® Accelerated Parallel Simulator. This solution provided improved visibility into circuit operation to speed up the distortion-sensitive design cycle by 30%, and more deterministic silicon performance leading to fewer disconnects between simulation and lab. Learn more about the Spectre Accelerated Parallel Simulator at http://bit.ly/1tUYTQ1 . The distortion summary feature mentioned in this video will be at shown at the IEEE International Microwave Symposium 2014 next week in Tampa Bay, Florida. Nebabie Kebebew has written a blog post describing the full line of SpectreRF technology highlights at the conference . Be sure to stop by and say "hello" if you are attending! Best regards, Tawna<img src="http://feeds.feedburner.com/~r/cadence/community/blogs/2893/~4/sXoHCRT5itA" height="1" width="1" alt=""/>https://community.cadence.com/cadence_blogs_8/b/rf/archive/2014/05/30/distortion-summary-in-youtube-video-and-at-ieee-ims2014-next-weekHave You Tried the New Transmission Line Library (rfTlineLib)?http://feedproxy.google.com/~r/cadence/community/blogs/2893/~3/PYN0usKCMk8/have-you-tried-the-new-transmission-line-library-rftlinelibFri, 03 Jan 2014 13:36:00 GMT75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:1329862Tawna/cadence_blogs_8/b/rf/archive/2014/01/03/have-you-tried-the-new-transmission-line-library-rftlinelib2Happy New Year! Have you tried the new Transmission Line Library (rfTlineLib) yet? In case you missed it, rfTlineLib was introduced in IC 6.1.6 ISR1 plus MMSIM 12.1.1 -or- MMSIM13.1. You may wonder....Why should I use the new rfTlineLib ? Well.....here are a few reasons: Accurate and robust Consistent between time and frequency-domain: Causal modeling approach ensures identical results in frequency vs. time domain simulations Easy to use: Graphical stack-up concept makes the editing of substrate parameters more efficient and less error prone The new rfTlineLib contains wideband-accurate transmission line models in multi-conductor microstrip and stripline configurations. Based on frequency-dependent per-unit-length parameters calculated by a 2D quasi-static electromagnetic solver, the models are both integrated in Virtuoso ADE and accessible from stand-alone Spectre netlists. The use model has been enhanced to include an interactive, graphical stack-up editor for storing substrate geometry and material properties. New rfTlineLib models, such as mlin and slin , are based on rigorous EM simulations and include state-of-the-art descriptions of dielectric and conductor losses. Their applicability extends to long transmission lines and wide frequency range. The models have been tested extensively against standard industry benchmarks and 3D EM models, matching them within 1% or better. The runtime simulation performance of new rfTlineLib models is comparable to the legacy lumped approximations. The use of EM-based transmission line parameters means that, in general, the initial extraction takes considerably longer, a few seconds in typical cases. However, instance and cross-section based caching makes EM extraction a one-time cost. As a result, in typical use, the overall simulation performance remains highly efficient. rfTlineLib transmission lines are based on Spectre mtline technology and are netlisted as instances of mtline. mtline has been enhanced significantly to support rfTlineLib. Improvements to EM solver accuracy. The solver is now within 1% of established benchmarks. New Spectre primitives -- including stackup, dielectric and conductor - and new mtline parameters, to support a common substrate definition and the ability to reference it from mtline New frequency-dependent models of dielectric losses, including Debye, Wideband Debye, and table-based The Hammerstad surface roughness model for enhanced modeling of conductor losses EM solver speed improvements The rfTlineLib library (located in the IC6.1.6 stream at $CDSHOME/tools/dfII/samples/artist/rfTlineLib ) is divided into the following categories: Everything: A complete list of all components in the library Uncategorized: Contains one item - the stackup .The stackup defines shared substrate and conductor parameters of the PCB/MMIC/IC and is referenced by all other models. The geometric properties include layer order and thicknesses while the material properties include dielectric constants, loss tangent, conductance, Debye model, frequency table of the complex dielectric constants, etc. The stackup offers several pre-configured and commonly used layer stacks and also offers the ability to define custom substrates. This is done with an easy-to-use graphical editor. These new cells reference the common substrate definition without the need to re-enter shared parameters. Behavioral: clin and tlinp ( clin represents an ideal two-conductor coupled transmission line. tlinp represents a lossy single-conductor transmission line. ) Transmission Lines: maclin : asymmetric 2-conductor coupled microstrip mclin : coupled 2-conductor microstrip mlin : single-conductor microstrip nclin : n-conductor transmission line sclin : coupled 2-conductor stripline slin : single-conductor stripline Here's the view from the Library Manager: Discontinuities: mbend , sbend : microstrip, and stripline mitered arbitrary angled bend mbend2 , sbend2 : microstrip, and stripline mitered 90 degree bend mcorn : microstrip corner mcurve , scurve : microstrip, and stripline curves mcros , scros : microstrip and stripline crosses mloceff , sloceff : microstrip and stripline open-circuit effects mtee , stee : microstrip and stripline T-junctions mstep , sstep : microstrip and stripline step discontinuities And here's the view from the Library Manager: Obsolete: Cells which are no longer recommended for use and are kept strictly for legacy reasons. See the Virtuoso Spectre Circuit Simulator RF Analysis Library Reference, Product Version 13.1 for more information. The new rfTlineLib library is easy to use. Just follow these simple steps: 1. Insert a stackup object in your schematic via the "Add Instance form". Click the button labeled Click to Edit Models on the Add Instance form to edit the stack, and click the Materials tab. This is where you set the material properties of conductors and dielectrics. 2. Define the stackup's material properties for the dielectric and conductor. Select your layer type and specify the properties for each of your dielectrics and conductors. 3. Define the layer stack from the Choose Configuration drop-down menu. Select microstrip, stripline, or generate your own custom stackup. OK the Stackup Editor form. OK the Edit Add Instance/Edit Object Properties form. 4. Insert the transmission line in your schematic. Below is a screenshot of the Edit Object Properties form, the Stackup Editor, and the Schematic containing the instantiated stackup . The rfTlineLib help pages are linked to the Add Instance/Edit Properties Help buttons of the library symbols. So, when you click the help button on the bottom of the form, it takes you to the appropriate section of the documentation. For more information, please see: Article 20162518 Setting up the new Transmission Line Workshop library and rfTlineLib http://support.cadence.com/wps/mypoc/cos?uri=deeplinkmin:ViewSolution;solutionNumber=20162518 Example workshops : Transmission Line Workshop, MMSIM 13.1, Sept 2013 (this is in the MMSIM hierarchy at $MMSIM_INST_DIR/tools.lnx86/spectre/examples/SpectreRF_workshop/rfworkshop.tar.Z.) Documentation : Virtuoso Spectre Circuit Simulator RF Analysis Library Reference, Product Version 13.1 Command line help. In an xterm, type: spectre -h dielectric spectre -h conductor spectre -h stackup spectre -h mtline More questions? Contact Cadence Customer Support . We'd be happy to assist! Wishing you a prosperous and joyous new year! Best regards, Tawna<img src="http://feeds.feedburner.com/~r/cadence/community/blogs/2893/~4/PYN0usKCMk8" height="1" width="1" alt=""/>https://community.cadence.com/cadence_blogs_8/b/rf/archive/2014/01/03/have-you-tried-the-new-transmission-line-library-rftlinelibMMSIM12.1 SpectreRF Preview of Coming Attractions! - Part 1http://feedproxy.google.com/~r/cadence/community/blogs/2893/~3/t50ClS5rGfU/mmsim12-1-spectrerf-preview-of-coming-attractions-part-2Mon, 12 Nov 2012 11:00:00 GMT75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:1315097Tawna/cadence_blogs_8/b/rf/archive/2012/11/12/mmsim12-1-spectrerf-preview-of-coming-attractions-part-20Greetings! MMSIM 12.1 contains many new features to aid RF designers. Here's a preview of the changes... Documentation Improvements The SpectreRF User Guide is being completely rewritten and updated for MMSIM12.1. Check it out - I'm sure you'll really like it! Harmonic Balance Improvements Harmonic balance has been improved in four major ways. When steady-state is detected in the tstab interval, by default, the simulation can proceed to hb without finishing the tstab simulation. There is an auto mode that determines whether to run tstab or not. There is an auto mode that sets the number of harmonics automatically. With these automatic features enabled, harmonic balance convergence has been dramatically improved, e specially in sweeps, corners, and Monte Carlo. The new Harmonic Balance GUI is shown below: Port Component Improvement The port component now has the ability to specify different impedances at different harmonics for the large-signal harmonic balance analysis. Fast Envelope Level1 and Level2 Improvement Level1 and Level2 can now output all the harmonics set in the choosing analyses form, and now has the ability to output time-domain results that include all the harmonics in the waveform. Full-Spectrum Pnoise improvements Full-spectrum pnoise now supports all of the noisetype settings. Noise Summary Improvements The noise summary now has the ability to provide results for noisetype=pmjitter. Frequency-Dependent Components Many customers have requested ideal components for use in simulation. These components are provided to allow what-if analysis without needing details of specific structures to allow the determination of what is needed to meet the spec. In MMSIM12.1, we have introduced four new frequency-dependent components: inductor and capacitor with Q (indq and capq), DC Block (dcblock) and DC Feed (dcfeed). These are intended for use in harmonic balance and the harmonic balance small-signal analyses; however, they also work in the transient and in the small-signal ac and sp analyses. They are not meant to be used with the shooting engine at this time. These are also well documented in the new MMSIM12.1 SpectreRF manual. Multi-Threading Shooting Large and Small-Signal Analyses In the MMSIM 12.1 release we've measured the following improvements: An average 2.5X speedup for PSS-shooting when comparing single thread to 4 thread performance, and A 2X speedup when comparing single thread to 4 thread performance for the small-signal analyses that run after PSS analysis. Streamlined RF Calculator Expressions Direct plot enters a much simpler syntax in the ADE Outputs Pane when the "Add to Outputs" button is selected. This syntax can be used in any calculator expression. Nport Improvements The nport usability has been dramatically improved in MMSIM12.1. I will devote my entire next blog to that topic. Stay tuned! Have fun simulating!!! Best Regards, Tawna P.S. Make sure you are using IC6.1.5 ISR14 or later to see these new features in the environment.<img src="http://feeds.feedburner.com/~r/cadence/community/blogs/2893/~4/t50ClS5rGfU" height="1" width="1" alt=""/>https://community.cadence.com/cadence_blogs_8/b/rf/archive/2012/11/12/mmsim12-1-spectrerf-preview-of-coming-attractions-part-2Measuring 2-Tone Intermodulation Using Envelope-Following Analysishttp://feedproxy.google.com/~r/cadence/community/blogs/2893/~3/zg1cDbJMUgI/measuring-2-tone-intermodulation-using-envelope-following-analysisWed, 16 May 2012 12:01:00 GMT75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:1308756Tawna/cadence_blogs_8/b/rf/archive/2012/05/16/measuring-2-tone-intermodulation-using-envelope-following-analysis2From time to time, SpectreRF users simulate very large, extracted-view circuits in 2+ tone QPSS. In many of those cases, memory requirements exceed the available resources. When that happens and small-signal approximations aren’t applicable, the user is typically stuck. The solution below and attached database describe a technique that achieves an order-of-magnitude reduction in memory requirements by converting an N-tone QPSS problem to an equivalent (N-1)-tone envelope-following analysis. Basic Idea This is a 2-tone signal in the common HB representation: We can also look at this as a modulated carrier, with the modulation function: We run an envelope analysis to compute the modulations at each node and harmonic and calculate the multi-tone representation using DFT. Motivation: * Numerically, envelope simulation is similar to HB simulation repeated at each time step. * By looking at a 2-tone signal as a modulated carrier, we convert a 2-tone problem to many smaller 1-tone problems. * In general, we can convert an N-tone HB analysis to a series of N-1 tone analyses. * For very large circuits with huge memory requirements, this can reduce the required memory by an order of magnitude – effectively, the same problem is now computed using much smaller, N-1 tone systems. Basic Approach in Virtuoso: * Use a Verilog-A module and transient simulation to generate I/Q components of the 2-tone modulation function * Apply the I/Q components using the PORT element’s Modulation parameters and run an envelope simulation * Run envelope analysis over N periods (the period is just the inverse of a half of the frequency spacing); this lets all transients expire (we are looking to reach the envelope steady-state) * Use adaptive step envelope for best simulation accuracy, but use equally spaced strobe output for best postprocessing accuracy using DFT. Applicability: * This currently works with 2-tone simulation. * This should also work with 3+ tones, but currently does not. CCR 979403 has been filed for this issue. Once fixed, you will be able to apply this to 3+ tones. * PAC – just set the power of one of the 2 tones to 0 and the other to something suitably small. In theory, this technique uses less memory than PAC. Example: In this example, you wil see: * Creating the IQ signal * Running envelope simulation * Postprocessing * Results comparison Creating the IQ signal Use the attached database testcase.tar.gz. This is available on Cadence Online Support in Solution 11774216. Open library test_2t_env. Simulate the cell generate_envelope from state spectre_state1. Generating the 2-tone Envelope The ADE setup lets you specify tone spacing, power in each tone, the number of samples per period (N) and the number of periods (cycles) to store. You get something like this: This now represents the envelope of our two-tone signal, and we’ll run and envelope analysis with it as the source next. Verifying the Source Signal First, we’ll run a very simple example, just to make sure that we get what we expect. Open the test_port schematic view and observe the port’s relevant settings. Port Edit Properties form: Running the Simulation: Open test_port->spectre_state1 and simulate. Plot the ‘right’ and ‘left’ outputs: (Note that 'right' and 'left' are defined below). What are 'right' and 'left'?? * ‘Right’/’Left’ is what you would see to the right/left of the carrier when you look at the spectrum analyzer. * This is just an artifact of how we post-process the envelope (to be explained later). * Since the ViVA DFT works on purely real waveforms, ‘left’ is really the image of the negative frequency spectrum. * So, we have a -20 dBm tone, offset 1 MHz from the carrier, and another of equal power, offset -1 MHz from the carrier. This is exactly what you’d expect. Running a 2-tone HB Simulation for Reference Open test_hb_2tone, which is just a behavioral LNA simulation. Run test_hb_2tone, which is the excitation we saw in the above paragraphs, applied in an HB simulation. Running an Envelope Simulation on the LNA Run test_env_2tone->spectre_state1. This is the same as the previous example, except that uses envelope simulation with the PORT element as set up earlier. Since the LNA has no memory and the excitation is symmetric, ‘left’ and ‘right’ are the same. Comparison Summary HB and envelope give nearly identical results! Post Processing Background * To calculate the spectrum, we would ideally take the complex DFT of the waveform and convert to dBm. The formula goes like: Spectrum=dbm(DFT(X(t))) * Since there is no complex DFT in ViVA, we do something like: Right Spectrum = dbm(DFT(real(X(t)/2)+j*DFT(imag(X(t)/2)) Left Spectrum = dbm(conj(DFT(real(X(t)/2)))-j*conj(DFT(imag(X(t)/2)))) * Note that, in all cases, we want to process only the last cycle of the waveform (when the steady-state is reached). * The expressions are a bit messy. They are shown only for reference below. Use the ADE state as a bench rather than attempting to enter the expression from scratch. Spectrum Post Processing Expressions 'Right' (10 * log10((pow(abs(((dft(real(harmonic(v("/out" ?result "envlp_fd") '1)) ((pv("/cycles" "value" ?result "variables") - 1) / pv("/deltaf2" "value" ?result "variables")) (pv("/cycles" "value" ?result "variables") / pv("/deltaf2" "value" ?result "variables")) pv("/N" "value" ?result "variables") "Rectangular" 1 "default") + (sqrt(-1) * dft(imag(harmonic(v("/out" ?result "envlp_fd") '1)) ((pv("/cycles" "value" ?result "variables") - 1) / pv("/deltaf2" "value" ?result "variables")) (pv("/cycles" "value" ?result "variables") / pv("/deltaf2" "value" ?result "variables")) pv("/N" "value" ?result "variables") "Rectangular" 1 "default"))) / 2)) 2) * 10))) Spectrum Post Processing Expressions 'Left' (10 * log10((pow(abs(((dft(real(harmonic(v("/out" ?result "envlp_fd") '1)) ((pv("/cycles" "value" ?result "variables") - 1) / pv("/deltaf2" "value" ?result "variables")) (pv("/cycles" "value" ?result "variables") / pv("/deltaf2" "value" ?result "variables")) pv("/N" "value" ?result "variables") "Rectangular" 1 "default") - (sqrt(-1) * dft(imag(harmonic(v("/out" ?result "envlp_fd") '1)) ((pv("/cycles" "value" ?result "variables") - 1) / pv("/deltaf2" "value" ?result "variables")) (pv("/cycles" "value" ?result "variables") / pv("/deltaf2" "value" ?result "variables")) pv("/N" "value" ?result "variables") "Rectangular" 1 "default"))) / 2)) 2) * 10))) Have fun simulating! Best Regards, Tawna<img src="http://feeds.feedburner.com/~r/cadence/community/blogs/2893/~4/zg1cDbJMUgI" height="1" width="1" alt=""/>https://community.cadence.com/cadence_blogs_8/b/rf/archive/2012/05/16/measuring-2-tone-intermodulation-using-envelope-following-analysisSpectreRF AppNotes and Tutorials....Still One of our Best Kept Secrets!http://feedproxy.google.com/~r/cadence/community/blogs/2893/~3/R3U3Cj6Q0wc/spectrerf-appnotes-and-tutorials-still-one-of-our-best-kept-secretsMon, 16 Jan 2012 20:25:00 GMT75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:1306704Tawna/cadence_blogs_8/b/rf/archive/2012/01/16/spectrerf-appnotes-and-tutorials-still-one-of-our-best-kept-secrets2Some of you may remember the blog written several years ago " Shhhhh...SpectreRF Tutorials and AppNotes - One of Our Best Kept Secrets ". Well, the more things change...the more things stay the same! The location of these tutorials and appNotes still seems to be one of our best kept secrets! So, I am disclosing (once again) the location of our SpectreRF Tutorials, Appnotes, and Workshops hidden in the MMSIM 11.1 hierarchy.... If you 'cd' to your /tools/spectre/examples/SpectreRF_workshop directory, there are the following tutorials, appNotes, and workshops: RF Workshop Tutorials The RF Workshop Tutorials show how to simulate typical RF circuits such as LNAs, Mixers, VCOs, and PAs in spectreRF. See rfworkshop.tar.Z RF Measurement Library: ( Supported IC 5.1.41 only ) Modern RF systems require designers to perform different RF measurements, such as second and third-order intercept points, for a large number of design variations. This tutorial describes how to use and create measurement cells in the RF measurement library flow, including: 1. How to perform several measurements at the same time. 2. How to reuse the measurements for different designs. The measurement-based simulation is easier to perform than an analysis-based simulation and is commonly used by other simulators in industry. The measurement aware approach allows you to place multiple measurements on a schematic. It also allows you to customize analyses and outputs to a greater extent than is currently possible in ADE. See the measurement_workshop.tar.Z . Important note: This is available in IC5.1.41 only . It is not supported in IC6.1.X. Signal Partitioning Workshop: The Signal Partitioning workshop describes how to speed up SpectreRF harmonic balance simulation by using signal partitioning for special circuit designs. Signal partitioning provides a method of decomposing a circuit so that multi-rate behavior can be exploited to increase simulation performance. See SignalPartition.pdf. OFDM Workshop: The OFDM AppNote and Workshop shows how to setup and run a simulation that uses the OFDM module in MATLAB and Spectre. Orthogonal Frequency-Division Multiplexing (OFDM) is a digital multi-carrier modulation scheme in which closely-spaced sub-carriers are summed into a main carrier. The sub-carriers are orthogonal to each other and modulated with conventional modulation schemes at a low symbol rate. The summation is performed using Fast Fourier Transforms. OFDM is robust against both intersymbol interference and narrow-band cochannel interference. It is spectral-efficient. OFDM is used in applications such as WiMAX, MBWA, Wi-Fi, and UWB. See files: OFDM_tutorial.pdf and ofdm.tar.Z GFSK Tutorial: The Gauss Frequency Shift Keying (GFSK) tutorial demonstrates how to set up and run a simulation using the GFSK module. The exercise begins by demonstrating the setup for MATLAB, then continues by illustrating the setup for Spectre. At the end of the tutorial is a summary of information about the terminals and parameters of the GFSK module. See files: GFSK_tutorial.pdf and gfsk.tar.Z SpectreRF Simulink Workshop: This tutorial and appNote explain how to do high level system concept design using SpectreRF and MATLAB/Simulink, thus combining the best of system-level simulation with lower-level analog and RF simulation. Simulink provides large libraries of DSP algorithms for generating complicated signals and post processing while SpectreRF supports transient and envelope analysis of common RF and communication circuits, such as mixers, oscillators, sample and holds, and switched capacitor filters at both the transistor and behavioral levels. See files: SpectreRF_simulink_example.pdf and SpectreRF_simulink_example.tar.Z SpectreRF Noise Aware PLL Flow The SpectreRF Noise-Aware PLL Design Flow is described in the following document: PLL.pdf SpectreRF AppNotes and Databases. 1. Perturbation Based Measurements appNote and database: PerturbationAN.pdf and Perturbation.tar. 2. Harmonic Balance release notes HB_AN.pdf. 3. Jitter Measurement appNote: JitterAN.pdf. 4. HBSP Analysis AppNote: hbsp.pdf 5. Power Supply Rejection Ratio Characterization Using Spectre RF for Driven Circuits: PSRR_Drv_AN.pdf. 6. Power Supply Rejection Ratio Characterization Using Spectre RF for Autonomous Circuits: PSRR_Osc_AN.pdf. 7. Large Signal S-Parameter Wizard appNote and workshop: LSSP_AN.pdf and LSSP.tar.Z. 8. Periodic Stability analysis using PSTB appNote and workshop: PstbAN.pdf and Pstb.tar.Z. 9. Noise Separation in Pnoise/Qpnoise Analysis appNote: NS_AN.pdf. 10. Spectre/RF Matlab toolbox for Spectre/SpectreRF/Ultrasim appNote and workshop: MatlabAN.pdf and MatlabWorkshop.pdf. 11. Using Verilog-A Baseband Models of RF Blocks appNote and database: RF_Blocks_AN.pdf and RF_Blocks.tar.Z 12. Long Term Jitter Measurements appNote: LTJM_AN.pdf. 13. PLL Jitter Measurements appNote: PLL_Jitter_AN.pdf. For more information and RF Design Tips, please see Cadence Online Support (COS) at http://support.cadence.com . Tawna Wilsey<img src="http://feeds.feedburner.com/~r/cadence/community/blogs/2893/~4/R3U3Cj6Q0wc" height="1" width="1" alt=""/>https://community.cadence.com/cadence_blogs_8/b/rf/archive/2012/01/16/spectrerf-appnotes-and-tutorials-still-one-of-our-best-kept-secretsMy Favorite nport Settings for Spectre and SpectreRFhttp://feedproxy.google.com/~r/cadence/community/blogs/2893/~3/8GCC5UUSzsw/my-favorite-nport-settingsWed, 23 Mar 2011 14:00:00 GMT75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:1260942Tawna/cadence_blogs_8/b/rf/archive/2011/03/23/my-favorite-nport-settings4The nport component located in analogLib can be used in circuits for Spectre and SpectreRF simulations. It is a scattering parameter (S-parameter) based distributed multi-port element. The nport truly is a "black box"… It can be used to model dramatically different systems, such as: lowpass/bandpass systems highpass/bandstop systems allpass systems systems with delay It is nearly i mpossible to have a "one size fits all" default setting. In recent releases, a great deal of fine tuning has been done to ensure accuracy and good simulation performance based on numerous design applications. However, you still need to understand how to tailor the model for your particular application. The most common problems seen during transient, pss, hb, etc analysis with a circuit containing an nport are due to: No DC data point, incorrect DC data point, or a big gap between DC and the next frequency point. Passivity not enforced in the data Insufficient high-frequency data Insufficient frequency resolution Data noise or error in data To assess the quality of your s-parameter data, look at the s-parameter data on the Smith Chart. You can now do this easily with ViVA in IC6.1.4 USR2, IC6.1.5 and later subversions. See Solution 11640878 http://support.cadence.com/wps/mypoc/cos?uri=deeplinkmin:ViewSolution;solutionNumber=11640878 The magnitude should be less than 1 (assuming a passive DUT) and remain inside the Smith Chart. The trace should be a clockwise growing or decaying spiral. The DC data point must be real and on the horizontal axis of the Smith Chart. The data should be smooth (not piecewise-linear or choppy looking. No sudden discontinuities). My favorite parameters are: dcextrap, hfextrap, passivity , and causality . These all assume that you are using linear or spline interpolation, which is recommended for most applications. Here’s the “scoop” …. dcextrap (long delay dc extrapolation method) dcextrap is typically used when the nport s-parameter data file models a system with long delay --and-- the DC point is not included in the s-parameter data file. One problem that occurs in these systems is the default extrapolation mechanism for the phase calculation results in an incorrect value of phase at DC, and then continues to be incorrect up to Fmin (the lowest frequency s-parameter data point). This happens when Fmin does not model the phase well enough at low frequency such that a simple extrapolation provides incorrect results. With dcextrap =constant (default option), a constant magnitude from the lowest frequency data point is used and the dc phase is set to the real axis near the lowest frequency data point. Using dcextrap =unwrap can improve the results by calculating a better estimate of the extrapolated phase response at DC. The DC magnitude is set based on a regression of the low frequency data. The DC phase is set by unwrapping the phase and setting it onto the real axis. With dcextrap =hpunwrap, both the magnitude and phase are extrapolated from a regression analysis. It is similar to dcextrap =unwrap but provides an alternate approach for dc phase extraction which may be preferred for high pass characteristics. Note that dcextrap =unwrap and hpunwrap are used only if you *do not* have a DC point in the s-parameter data file. If there is a DC data point, then this parameter is ignored. The hfextrap parameter (long delay high frequency extrapolation method) hfextrap =constant (default). The default behavior of Spectre's nport element is to use constant extrapolation at high frequencies. hfextrap =linear linearly extrapolates phase at high frequencies. This can help to more closely match lab measurements when the S-parameter data is frequency limited and extrapolating the phase in a linear fashion is realistic. hfextrap is ignored if you are using causality . When using hfextrap , you may also want to set usewindows =yes (smooth data windowing function) to help ensure model stability, particularly with s-parameter data having insufficient bandwidth. The causality parameter corrects s-parameter data to ensure the system is causal. When causality =no or the parameter is not set, the nport behavior is the same as in previous MMSIM releases. No causality correction is done. Both causality =fmax and causality =auto extrapolate s-parameter data with polynomial, and apply a Hilbert transform to calculate causality violation. Then coefficients of interpolating polynomial are optimized to minimize causality error. The parameters usewindow and hfextrap are ignored when causality =fmax or auto. When causality =fmax, Spectre corrects causality up to fmax . It either uses the default (which is 3 times the maximum frequency specified in the s-parameter data file), or it uses what the user has specified for the existing nport parameter fmax . When causality =auto, Spectre corrects s-parameter causality up to an automatically optimized fmax (the fmax frequency is iteratively adjusted to minimize causality error) and ignores the existing nport parameter fmax. Note that the auto setting can significantly increase simulation time, therefore causality =fmax is recommended. There are two passivity parameters: passivity and pabstol . Due to poor measurement accuracy, the s-parameter data may be non-passive. The consequence is the time-domain simulation may not converge. The passivity parameter checks and enforces passivity of s-parameters. Possible values are no (default), check or enforce. passivity =check ensures the eigenvalues of the real(Y) matrix are non-negative. A warning message is issued if the data is not passive. passivity =enforce re-sets the negative eigenvalues of the real(Y) matrix to zero if the data is found to be non-passive. A notice is issued in the spectre.out.file. The pabstol parameter specifies the absolute tolerance of passivity criteria. The default is 1e-6. Summarizing.... Good S-parameter data is the key to nport model stability and accuracy in the time domain. Most convergence problems are caused by incomplete or incorrect data. Tawna Wilsey<img src="http://feeds.feedburner.com/~r/cadence/community/blogs/2893/~4/8GCC5UUSzsw" height="1" width="1" alt=""/>https://community.cadence.com/cadence_blogs_8/b/rf/archive/2011/03/23/my-favorite-nport-settingsNew Fast Envelope in MMSIM10.1 is *Really* Fast and Accurate!http://feedproxy.google.com/~r/cadence/community/blogs/2893/~3/0Sgun6XIuTo/new-fast-envelope-in-mmsim10-1-is-really-fastMon, 15 Nov 2010 21:00:00 GMT75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:1210861Tawna/cadence_blogs_8/b/rf/archive/2010/11/15/new-fast-envelope-in-mmsim10-1-is-really-fast0Traditionally, envelope analysis is used to simulate circuits with modulated inputs. Envelope analysis is much faster than transient simulation, and is used for simulating spectral regrowth. Regular envelope analysis is "brute force" transistor-level simulation: Simulation time for traditional envelope analysis can take hours to days, depending on designers’ specified stop time for simulation. It's accurate and includes all the nonlinearity effects. Fast envelope analysis technology uses an accelerated mathematical representation to reduce the computational complexity The circuit is automatically calibrated and replaced by an accelerated mathematical representation without the designer's intervention. Simulation completes in minutes, independent of the designer’s specified stop time. Good compromise between computational efficiency and accuracy. Simulations that used to take days now take hours or minutes with no loss in accuracy! There is an easy to use GUI and use-model in MMSIM 10.1: There are 3 modes available for fast envlp analysis: off: regular envlp analysis (default) level1: fast envlp analysis in level 1(for circuits with short memory) level2: fast envlp analysis in level 2 (more accurate) Run fast envlp with a fixed step size. Set the step period to the I/Q data sampling rate. Select the I and Q modulation sources on the schematic, as well as the output node(s) of the PA. In summary: Fast envlp is easy to use. Orders of magnitude faster than regular envlp analysis. Accuracy is very good. Fast envlp is used for simulating spectral re-growth (ACPR, ACLR). Fast envlp is supported in the ADE GUI in IC 5.1.41.500.6.145 and IC 6.1.4.500.8 . Have fun simulating! Tawna Wilsey<img src="http://feeds.feedburner.com/~r/cadence/community/blogs/2893/~4/0Sgun6XIuTo" height="1" width="1" alt=""/>https://community.cadence.com/cadence_blogs_8/b/rf/archive/2010/11/15/new-fast-envelope-in-mmsim10-1-is-really-fastNew Time-Saving Feature in IC6.1.4 ISR2: Plot S-Parameter Data Directly From ViVA!http://feedproxy.google.com/~r/cadence/community/blogs/2893/~3/VIlC-rRd2xQ/new-time-saving-feature-in-ic6-1-4-isr2-you-can-now-plot-s-parameter-data-directly-from-vivaThu, 20 May 2010 14:28:00 GMT75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:62065Tawna/cadence_blogs_8/b/rf/archive/2010/05/20/new-time-saving-feature-in-ic6-1-4-isr2-you-can-now-plot-s-parameter-data-directly-from-viva0If you haven't heard about it....there is a new feature in IC6.1.4 ISR2 which makes troubleshooting circuits containing nports ( s-parameters ) much easier and faster! Starting i n IC6.1.4 ISR2, you can now plot s-parameters directly in ViVA (without having to create a test bench and run a Spectre sp simulation). This is a fantastic time-saver! Why would I want to use this? You may want to view the s-parameter data in the frequency domain prior to time domain simulation to verify that the s-parameter data is reasonable. The s-parameter data may be measured from lab equipment (Vector Network Analyzer), from simulation data, or from an EM field solver. What often happens is when your time domain simulation (pss, harmonic balance, transient, etc. analysis) fails or the simulation results aren't reasonable, you want to look at the s-parameter data file contents to see if there's a problem... perhaps the data resolution is poor, the data is noisy, etc. The old way: Prior to IC 6.1.4 ISR2, in order to view the "native" s-parameter data, you had to Create a schematic test bench containing an nport with the appropriate number of ports . Run an sp analysis. Plot the results in the Direct Plot form. For 2-port s-parameter data, this was an inconvenience (15 minutes) . For a large package model with (say) 25 to 200 ports, this was just downright PAINFUL . (an hour or more). The new way: Now in IC 6.1.4 ISR2, you can plot s-parameter data directly from the ViVA Results Browser in just a minute or two by: File-Open Results Load the s-parameter data file. Plot the s-parameters Yes, it is that simple!!! Limitations: The s-parameter must follow the naming convention filename.s n p where n is the number of ports Only Touchstone format is supported at this time. (Spectre and CITIfile formats to be supported in the future). Linear 2 port noise parameters cannot be plotted ( This should be fixed soon.) For more information , please see Cadence Online Support solution 11640878.<img src="http://feeds.feedburner.com/~r/cadence/community/blogs/2893/~4/VIlC-rRd2xQ" height="1" width="1" alt=""/>https://community.cadence.com/cadence_blogs_8/b/rf/archive/2010/05/20/new-time-saving-feature-in-ic6-1-4-isr2-you-can-now-plot-s-parameter-data-directly-from-vivaNPORT S-Parameter Model Enhancementshttp://feedproxy.google.com/~r/cadence/community/blogs/2893/~3/gSbD_ojh5to/nport-s-parameter-model-enhancementsWed, 30 Dec 2009 11:00:00 GMT75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:24095Tawna/cadence_blogs_8/b/rf/archive/2009/12/30/nport-s-parameter-model-enhancements1In MMSIM 7.2, two new parameters have been added to the Spectre nport primitive: datatrunc and causality . In MMSIM 7.1, passivity checking was added. The nport now has causality correction, passivity checking and enforcement, and the ability to remove small couplings terms from the input s-parameter data. The datatrunc parameter removes small relative coupling data in your s-parameter file. This improves capability and performance for simulating large scale nport systems. You can adjust this value from the default (0.001) to say 0.01 or 0.1, according to your accuracy requirements to get better performance. However, note that you are trading off accuracy for performance by doing so. The causality parameter corrects s-parameter data to ensure the system is causal. When causality =no or the parameter is not set, the nport behavior is the same as in previous MMSIM releases. When causality =fmax, Spectre corrects causality up to fmax , specified by the existing nport parameter fmax. When causality =auto, Spectre corrects s-parameter causality up to an automatically optimized fmax and ignores the existing parameter fmax. Note that the auto setting can significantly increase simulation time, therefore causality =fmax is recommended. The parameter usewindow is ignored when causality =fmax or auto. Two new passivity checking and enforcement parameters were added in the MMSIM 7.1 release. The passivity parameter checks and enforces passivity of s-parameters. Possible values are no (default), check or enforce. The pabstol parameter specifies the absolute tolerance of passivity criteria. The default is 1e-6. Tawna Wilsey<img src="http://feeds.feedburner.com/~r/cadence/community/blogs/2893/~4/gSbD_ojh5to" height="1" width="1" alt=""/>https://community.cadence.com/cadence_blogs_8/b/rf/archive/2009/12/30/nport-s-parameter-model-enhancementsTip Of the Week: analogLib mtline now has a cross sectional viewer when Type of Input=Field Solverhttp://feedproxy.google.com/~r/cadence/community/blogs/2893/~3/mdvOHOMRCQo/tip-of-the-week-analoglib-mtline-now-has-a-cross-sectional-viewer-when-type-of-input-field-solverMon, 04 Aug 2008 15:10:00 GMT75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:10455Tawna/cadence_blogs_8/b/rf/archive/2008/08/04/tip-of-the-week-analoglib-mtline-now-has-a-cross-sectional-viewer-when-type-of-input-field-solver0Many users have indicated that it is challenging to correctly enter complex transmission lines (multiple conductors, conductors at different heights, and multiple dielectrics) into the analogLib mtline when using the Field Solver Type of Input. You wanted to see a cross-sectional view of your transmission line to verify that your transmission line cross-section is correct. In the past, you may have used the LMG standalone utility to view the transmission line cross-sectional view, but it is no longer supported (and all of the new functionality/bug fixes have gone into mtline, but not into LMG). I have some great news. As of IC subversions 5.1.41.500.5.120 and 6.1.2, there is now a cross sectional viewer button in the analogLib mtline component edit properties/add instance form. The "Display Cross Section" button becomes visible when the Type of Input is set to Field Solver. The latest ISRs may be downloaded from downloads.cadence.com .<img src="http://feeds.feedburner.com/~r/cadence/community/blogs/2893/~4/mdvOHOMRCQo" height="1" width="1" alt=""/>https://community.cadence.com/cadence_blogs_8/b/rf/archive/2008/08/04/tip-of-the-week-analoglib-mtline-now-has-a-cross-sectional-viewer-when-type-of-input-field-solverTip of the Week: Why Do Shooting and Harmonic Balance Phase Noise Results Differ?http://feedproxy.google.com/~r/cadence/community/blogs/2893/~3/sdcciFg6HX8/why-do-shooting-and-harmonic-balance-phase-noise-results-differTue, 29 Jul 2008 12:12:00 GMT75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:10396Tawna/cadence_blogs_8/b/rf/archive/2008/07/29/why-do-shooting-and-harmonic-balance-phase-noise-results-differ0Question: You are simulating your VCO in SpectreRF. You ran your PSS + Pnoise (noisetype=sources) simulations using the Shooting engine pss+pnoise and plotted the phase noise. You noticed that the SpectreRF phase noise results differ significantly for the Shooting Newton vs. Flexible Balance engines. In the Shooting Pnoise analysis, there are Floquet warnings in your spectre.out file. ------------------------------------------------ WARNING (SPCRTRF-15093): The Floquet eigenspace computed by the PSS analysis appears to be ill-defined, so the PNOISE computations might be inaccurate too. Consider rerunning the simulation with a smaller reltol value, different tstab values, and with method=gear2only'. Check the circuit for unusual components. ------------------------------------------------ You tried the above recommendations in the warning message, but there is still a large difference between Shooting and HB results. Which results are correct? Answer: The Floquet warnings indicate that the circuit is ill-conditioned, the simulator is having difficulty finding the correct Floquet eigenvalue, and the results are not correct. We have improved Pnoise analysis for autonomous circuits with a new "augmented" mode. Augmented Pnoise will give more accurate results for oscillators with large time constants. In augmented Pnoise, the frequency-aware PPV method (rather than Floquet deflation) is used. The new method gives a Lorentzian plot. However, the price you pay is slower simulation speed. To turn on augmented Pnoise, please set the Pnoise option "augmented=yes" for PSS+Pnoise oscillator simulations. Starting in MMSIM6.2.1 ISR (6.2.1.278), augmented Pnoise is available in HB Pnoise. Starting in MMSIM7.0.1 FCS, augmented Pnoise is available in Shooting Pnoise. If when using Shooting PSS+Pnoise in Spectre versions prior to MMSIM 7.0.1, you see Floquet warnings in the spectre.out file, the workaround is: * Use HB PSS+Pnoise and the augmented=yes option. With the augmented mode enabled, the Shooting PSS+Pnoise should match the HB PSS+Pnoise results, and you will no longer get Floquet warnings. Note that GUI support for augmented Pnoise is not available in ADE until IC5.1.41 ISR117 and IC6.1.2 ISR13 or later versions. For more information, please see the online help spectre -h pnoise<img src="http://feeds.feedburner.com/~r/cadence/community/blogs/2893/~4/sdcciFg6HX8" height="1" width="1" alt=""/>https://community.cadence.com/cadence_blogs_8/b/rf/archive/2008/07/29/why-do-shooting-and-harmonic-balance-phase-noise-results-differnonadult