Document Contents Introduction Layout Extraction with Parasitic Capacitances Timing Analysis DC Analysis

Similar documents
Document Contents Introduction Layout Extraction with Parasitic Capacitances Timing Analysis DC Analysis

UNIVERSITY OF CALIFORNIA College of Engineering Department of Electrical Engineering and Computer Sciences

CADENCE LAYOUT TUTORIAL

Getting Started with the Cadence Software

Royal Military College of Canada

Lab 3 Layout Using Virtuoso Layout XL (VXL)

Virtuoso Analog Design Environment Family Advanced design simulation for fast and accurate verification

EE 242 EXPERIMENT 5: COMPUTER SIMULATION OF THREE-PHASE CIRCUITS USING PSPICE SCHEMATICS 1

Mentor Tools tutorial Bold Browser Design Manager Design Architect Library Components Quicksim Creating and Compiling the VHDL Model.

3. On the top menu bar, click on File > New > Project as shown in Fig. 2 below: Figure 2 Window for Orcad Capture CIS

Copyright 2011 Linear Technology. All rights reserved.

Circuit Simulation: Here are some of ADS analysis:

Reconfigurable ECO Cells for Timing Closure and IR Drop Minimization. TingTing Hwang Tsing Hua University, Hsin-Chu

Lab 1: Full Adder 0.0

Creating a new project: Choose File> New Project. A dialog box appears and asking about the work directory that by default

ECE410 Design Project Spring 2008 Design and Characterization of a CMOS 8-bit Microprocessor Data Path

ETIN25 Analogue IC Design. Laboratory Manual Lab 1

How To Design A Chip Layout

ADS Ptolemy in AMSD-ADE

Jianjian Song LogicWorks 4 Tutorials (5/15/03) Page 1 of 14

Installing HSPICE on UNIX, Linux or Windows Platforms

Royal Military College of Canada

Lab 3: Introduction to Data Acquisition Cards

Experiment #11: LRC Circuit (Power Amplifier, Voltage Sensor)

Royal Military College of Canada

KiCad Step by Step Tutorial

Lab 1: Introduction to PSpice

KiCad Step by Step Tutorial

First Steps with CoDeSys. Last update:

LAB 7 MOSFET CHARACTERISTICS AND APPLICATIONS

PSPICE TUTORIAL (BASIC)

University of Texas at Dallas. Department of Electrical Engineering. EEDG Application Specific Integrated Circuit Design

ECE124 Digital Circuits and Systems Page 1

CHAPTER 11: Flip Flops

Word 2010: Mail Merge to with Attachments

Quick Start Using DASYLab with your Measurement Computing USB device

GelAnalyzer 2010 User s manual. Contents

IBIS for SSO Analysis

Module 7 : I/O PADs Lecture 33 : I/O PADs

Help on the Embedded Software Block

Installation of ADS SiMKit startup script and designkit on Windows for SiMKit version 4.4

SIMULATIONS OF PARALLEL RESONANT CIRCUIT POWER ELECTRONICS COLORADO STATE UNIVERSITY

Laboratory 4: Feedback and Compensation

Waveform Calculator User Guide. Product Version December 2005

Digital IC Design Flow

OrCAD Capture with PSpice and Allegro DE CIS with AMS Simulator. Describes how to create a PSpice Archive File with Capture

PCB Artist Tutorial:

Step Response of RC Circuits

StarRC Custom: Next-Generation Modeling and Extraction Solution for Custom IC Designs

OrCAD Flow Tutorial. Product Version 10.0 Februaruy 2004

Cadence Verilog Tutorial Windows Vista with Cygwin X Emulation

Quartus II Introduction Using VHDL Design

Installing S500 Power Monitor Software and LabVIEW Run-time Engine

Team Foundation Server 2012 Installation Guide

Copyrights. Software, documentation and related materials: Copyright 2002 Altium Limited

Module 22: Signal Integrity

Back Propagation Neural Networks User Manual

EXPRESS PCB TUTORIAL Author: Lee Morey Revised: JE Feb 2015

ε: Voltage output of Signal Generator (also called the Source voltage or Applied

Setting Up ALERE with Client/Server Data

How to test and debug an ASP.NET application

Laboratory 2. Exercise 2. Exercise 2. PCB Design

Title : Analog Circuit for Sound Localization Applications

TSM for Windows Installation Instructions: Download the latest TSM Client Using the following link:

SA-9600 Surface Area Software Manual

Case study: how to use cutoff conditions in a FRA frequency scan?

Xilinx ISE. <Release Version: 10.1i> Tutorial. Department of Electrical and Computer Engineering State University of New York New Paltz

Designing a Schematic and Layout in PCB Artist

ACCESS Importing and Exporting Data Files. Information Technology. MS Access 2007 Users Guide. IT Training & Development (818)

Practice Fusion API Client Installation Guide for Windows

Monte Carlo Simulation of Device Variations and Mismatch in Analog Integrated Circuits

SAnDReS Tutorial 01 Prof. Dr. Walter F. de Azevedo Jr.

CMOS VLSI Design Lab 1: Cell Design and Verification

EVALUATION ONLY. WA2088 WebSphere Application Server 8.5 Administration on Windows. Student Labs. Web Age Solutions Inc.

Op-Amp Simulation EE/CS 5720/6720. Read Chapter 5 in Johns & Martin before you begin this assignment.

FP File Organizer 3.0 Instruction Manual

Setting up a Local Interconnect Network (LIN) using dspace MicroAutoBox 1401/1501 Simulink Blocks

How to protect, restore and recover SQL 2005 and SQL 2008 Databases

Parts List. Navigation

FREQUENCY RESPONSE OF AN AUDIO AMPLIFIER

Design Project: Power inverter

Introduction to Microsoft Access 2003

SOS SO S O n O lin n e lin e Bac Ba kup cku ck p u USER MANUAL

Executive Summary. Table of Contents

Lightning Payroll Program Update and Backup

MICROSOFT WORD TUTORIAL

After opening the Programs> Xilinx ISE 8.1i > Project Navigator, you will come to this screen as start-up.

5.6.3 Lab: Registry Backup and Recovery in Windows XP

Use the Microsoft Office Word Add-In to Create a Source Document Template for Microsoft Dynamics AX 2012 WHITEPAPER

DS2438EVKIT+ Smart Battery Monitor Evaluation Kit

Selected Filter Circuits Dr. Lynn Fuller

True Single Phase Clocking Flip-Flop Design using Multi Threshold CMOS Technique

Chapter 10 Advanced CMOS Circuits

Tech Sheet NOISEMOD.3PC HELP DOCUMENTATION

Creating Home Directories for Windows and Macintosh Computers

Appendix A How to create a data-sharing lab

PLL frequency synthesizer

IN THE WORKSHOP Tip #14

Module 1: Getting Started With Altium Designer

Lab #9: AC Steady State Analysis

Transcription:

Cadence Tutorial C: Simulating DC and Timing Characteristics Created for the MSU VLSI program by Professor A. Mason and the AMSaC lab group Last updated by Waqar A Qureshi FS08 (convert to spectre simulator) Document Contents Introduction Layout Extraction with Parasitic Capacitances Timing Analysis DC Analysis Introduction This document is the third of a three-part tutorial for using CADENCE Custom IC Design Tools for a typical bottom-up circuit design flow with the AMI/C5N process technology and NCSU design kit. Tutorial A and B cover the use of the Virtuoso schematic entry tool, Virtuoso analog simulation tool and Virtuoso layout tool. This tutorial covers the timing analysis on the schematic and extracted view. It is assumed you have followed Tutorials A and B and have the schematic and layout views of a CMOS inverter. Layout Extraction with Parasitic Capacitances Launch Cadence and open the layout view for the inverter cell. In the Command Interpreter Window (CIW), set the capacitance-ignore-threshold by entering NCSU_parasiticCapIgnoreThreshold=1e-18 in the prompt at the bottom of the CIW and pressing Enter. Although this was not needed for functional simulations, it will make timing analysis more accurate. In the Virtuoso Layout Editing window select Verify => Extract. A new window (below) with extraction options will appear. Click on Set Switches and select Extract_parasitic_caps. Click on OK to extract parasitic elements from the layout with the new parasitic capacitance threshold. After extraction, check the CIW to make sure there are no errors. Load the extracted cellview from the Library Manager window. This will open up a layout should look similar to the one below. Press shift+f to see all the device parameters. Extract Window Extracted Layout View Cadence Tutorial C: Simulating DC and Timing Characteristics 1

Timing Analysis STEP 1. Start Analog Environment(ADE L) With the extracted view open, in the Virtuoso Layout Editing window select Launch=> Analog Design Environment(ADE L) to open the Virtuoso Analog Circuit Design Environment window. o You can also launch this tool from the CIW by selecting Tools => Analog Environment => Simulation in the CIW. When the Virtuoso Analog Circuit Design Environment opens you have click on the Setup => Design to specify the library and cell, for example tutorial and "inv". STEP 2. Setup Analog Simulator In VirtuosoAnalog Design Environment, click on Setup => Simulator/Directory/Host. Choose spectre as the Simulator. Enter a path for your simulations files and results. You may set this to any valid path, but you might find it useful to keep all simulations in one directory. If you don t specify the whole path, the simulation files and results will be created under the directory you launched cadence. The following example saves the simulation file and results at /egr/courses/personal/ece410/<username>/simulation assuming you launched Cadence from your root 410 class directory If you need to run multiple simulations on the same cell, you can even use different paths for each simulation. Cadence Tutorial C: Simulating DC and Timing Characteristics 2

STEP 3. Set up Analog Environment to use Extracted View In Virtuoso Analog Design Environment, click on Setup => Environment. The Environment Options dialog box (below) will pop up. In the Environment Options window, under the line Switch View List. type the word extracted before the word schematic (see below). Then click on OK. This entry is an ordered list of cell views which contain information that can be simulated. The simulator (in fact the netlister) will search until it finds one of these cellviews. The default entry does not contain an extracted cellview. As a result of this modification, the simulator will use the extracted cellview instead of the schematic cellview to include the effect of parasitic capacitance in the simulation. Make sure to check the Y for Use SPICE Netlist Reader(spp), since the default transistor model files are written in SPICE syntax. STEP 4. Set up stimulus file Create a new stimulus file by opening any text editor. Make sure to give the file a name either when you create it or when you save it, depending on your text editor ( stimulus.txt, for example). Enter the following text, save the file and exit the text editor. (Note: each circle bulleted item below represents one full line in the stimulus file; be careful if you cut and paste this text. You also need to be sure to hit Enter after the last line to insert a line return in the text file.) o simulator lang=spectre o global gnd! o Vdd (vdd! 0) vsource dc=3 o Gnd (gnd! 0) vsource dc=0 o v1 (A 0) vsource type=pulse val0=0 val1=3 rise=0.05n fall=0.05n width=10n period=20n o c0 (0 Y) capacitor c=3f This assumes your input and output node are called A and Y and attaches a load capacitance to the output that simulates the input capacitance of gates attached to the output Cadence Tutorial C: Simulating DC and Timing Characteristics 3

node. For additional information about stimulus files, including notes on creating files with multiple inputs, see the Guide to Writing Stimulus Files. In the Virtuoso Analog Design Environment, include this new stimulus file by clicking Setup => Simulation Files and adding the name of the file in the Stimulus File box. STEP 5. Setup Model Files: In Virtuoso Analog Design Environment, click on Setup => Model Libraries If you have correctly set up your ECE410 Cadence environment, two Model Library Files should already appear, ami06n.m and ami06p.m. If so, you may exit this dialog by pressing OK. You can add the necessary Model Library Files by o Click the bottom Model Library File box o Type /opt/soft/ncsu-cdk-1.6.0.beta/models/spectre/nom/ami06n.m o Click the Add button. This should add the model to the Model Library File list and clear the Model Library File box o Repeat the process or /opt/soft/ncsu-cdk-1.6.0.beta/models/spectre/nom/ami06p.m o Your Model Library Setup dialog box should look like the one below. Once it does, you can click OK to close the dialog. STEP 6. Setup Analysis In Virtuoso Analog Design Environment window, select Analyses => Choose. In the window that pops up, select tran to choose a transient analysis. Enter the time limits for simulation: Set the Stop Time to 50n. Choose Enabled at the bottom of the screen and press OK. Cadence Tutorial C: Simulating DC and Timing Characteristics 4

STEP 7. Setup output traces In Virtuoso Analog Design Environment window, select Outputs => to be plotted => Select on Schematic. This will activate the Layout Editing window with the extracted view of the inverter, allowing you to pick which signals (nets/wires) you would like to have plotted during the simulation. In the Layout Editing window select input gate poly and output metal1 (see example below). This will complete the simulation setup. Now your Virtuoso Analog Design Environment window should look as follows (names may vary): STEP 8. Run Simulation In the Virtuoso Analog Design Environment window select Simulation => Netlist and Run. When the simulation is complete, the CIW should show "Reading Simulation Data... Successful". If the simulation was not successful, go to Simulation => Output Log in your Virtuoso Analog Design Environment to find out what the problem was. After a successful simulation, an output signal plot will pop up. As shown in the plot below, you should now see delays in the output signal due to the parasitics. If the simulated output waveform looks like the function you are expecting, you have probably done everything correctly. If not, check your steps and repeat until the correct output is obtained. Cadence Tutorial C: Simulating DC and Timing Characteristics 5

STEP 9. Measure Propagation Delay In the Waveform Window click on Axes => To Strip to separate input and output signals. Click on Markers => Trace Markers (hotkey: a, b) and use them to measure the rising propagation delay and falling propagation delay. To obtain a plot with higher resolution, you can run the simulation again showing only 1 or 2 cycles, say with a stop time of 25nsec. To make measurements with the markers, first you should select Marker A and locate where input signal (A) raises to 1.5V (half of VDD). Then select Marker B and locate where output signal (Y) falls to 1.5V. Finally, the delta values shown at the left-bottom corner of the window is falling propagation delay time of your inverter. Use same method find out what the rising propagation delay time is. Record these values and use them to calculate the total propagation delay. STEP 10. Measure Rise and Fall Times Measure and record the output rise time and fall time using the crosshair markers A and B as in Step 8. Rise time of the output is defined as the time taken for the output to rise from 10% of the final value to 90% of the final value (If the output rises from 0v to 3v, then rise time is the time for the voltage to change from 0.3v to 2.7v). Similarly the fall time of the output is defined as the time for the output signal to fall from 90% of the final value to 10% of the final value (If the output falls from 3v to 0v, then fall time is the time for the voltage to change from 2.7v to 0.3v). DC Analysis STEP 11. Setup Simulation Open a new text file (any file name is fine). Enter the following text, save the file and exit the text editor. Cadence Tutorial C: Simulating DC and Timing Characteristics 6

o simulator lang=spectre o global gnd! o parameters vs=0 o vdd (vdd! 0) vsource dc=3 o Gnd (gnd! 0) vsource dc=0 o v1 (A 0) vsource dc=vs o dcs dc param=vs start=0 stop=3 step=0.01 This assumes your input node is called A. Note an output capacitance is not needed since we are doing a DC analysis and timing will not be considered. Instead a DC statement is needed. line 2: the parameters statement declares a simulation variable called vs, which is initialized to 0. This parameter will be used to sweep the dc value of the voltage at input node A. You can give this any name and starting value. line 3: the standard definition of dc voltage vdd! line 5: definition of a voltage source at the input node A. Notice that the dc voltage value is set to the variable vs as defined in line 2. This allows the value to be swept instead rather than being constant. line 6: the DC sweep statement. The first field dcs is the name of the dc sweep (can be any alphanumeric name). The second field dc is required to specify the command. The third field param=vs specifies the parameter to be swept; in this case, it is the voltage at the inverter input. The fourth and fifth fields ( start and stop ) specify the bounds of the sweep. The sixth field step=0.01 specifies the sweep step interval. Decreasing/increasing this value will increase/decrease the dc operating point precision, but take more/less time to simulate. In the Virtuoso Analog Design Environment, include this new stimulus file by clicking Setup => Simulation Files. If a file exists in the Stimulus File box, delete it. Then add the name of the new file in the Stimulus File box. STEP 12. Setup Analysis In Virtuoso Analog Design Environment window, select Analyses => Choose. In the window that pops up, select dc to choose a DC analysis. Choose Save DC Operating Point and press OK. STEP 13. Setup Output Traces In Virtuoso Analog Design Environment window, select Outputs => to be plotted => Select on Schematic and pick the input and output nets again as you did for the transient analysis above. This will complete the simulation setup. Now your Virtuoso Analog Design Environment window should look like the window below. Cadence Tutorial C: Simulating DC and Timing Characteristics 7

STEP 14. Run Simulation In the Virtuoso Analog Design Environment window select Simulation => Netlist and Run. When the simulation is complete, the CIW should show "Reading Simulation Data... Successful". If the simulation was not successful, go to Simulation => Output Log in your Virtuoso Analog Design Environment to find out what the problem was. After a successful simulation, an output signal plot will pop up showing the voltage transfer curve. If the plot does not look like you would expect, check your steps and repeat until the correct output is obtained. STEP 15. Measure DC Parameters Using the crosshair markers, measure the switching threshold (midpoint voltage), where the input voltage is equal to the output voltage. Measure the output high voltage and output low voltage. Cadence Tutorial C: Simulating DC and Timing Characteristics 8

OPTIONAL. Saving Simulation State The Analog Design Environment state can be saved so that the settings do not need to be manually entered each time a design is simulated. To save the simulation state, in the Virtuoso Analog Circuit Design Environment window select Session => Save State The Save As field does not have to be a unique name for all designs; the state is saved within the directory of the current cell view, so you can use the same Save As name for multiple cells without overwriting each other.. For example, cells named inv and nand2 can both independently have the state state1 saved. Enter a Save As name, e.g., state1 and click on OK. Saving all simulation data can take a lot of memory so you may find it useful to alter the What to Save parameters to save only the items you need to run future simulatoins. Saving outputs from complex cells with multiple plotted node waveforms can generate very large files. Cadence Tutorial C: Simulating DC and Timing Characteristics 9

OPTIONAL. Loading Simulation State To load the saved state, after opening a specific cell, in the Virtuoso Analog Circuit Design Environment window select Session => Load State Select the desired State Name and click on OK. THE END Cadence Tutorial C: Simulating DC and Timing Characteristics 10