Anda di halaman 1dari 11

Cadence Tutorial

I. Introduction This tutorial provides an introduction to analog circuit design and simulation with Cadence, and covers the features that are relevant for the homework assignments. The tutorial is divided into the following topics: Logging on and Starting Cadence Creating a Design o o o o o Creating a new library and cellview Placing the Parts Editing the Symbol Properties Wiring the Schematic Modifying Wire Attributes

Analyzing the Design and Plotting Results o o o o o o Finding the DC Operating Point and performing a DC Sweep Performing a Transient Analysis Performing an AC Analysis Performing a Parametric Sweep A Note on Measuring Currents A Note on Plotting

Invoking Cadence Help o Getting Additional Help with Cadence

Throughout the document, the following II. Logging on and Starting Cadence In order to use the ECE164-provided installation of Cadence, you either need to be sitting at one of the Linux workstations provided for use by ECE264 students (see the ECE264 website for the locations of these workstations), or you can login remotely to ieng6-203.ucsd.edu. In either case, you should login with your Open Computing Environment account obtained via Academic Computing Services (ACS). If you wish to login remotely, you will need SSH and X-server software on your local machine. The necessary software is available as part of the operating systems on Sun Workstations, PCs running Linux, and Macintosh computers running OS X. It can be obtained via third parties for computers running Windows. Students who wish to login remotely are responsible for obtaining (if running Windows), learning how to use, and maintaining their own SSH and X-server software. Once you have logged in, open a terminal window if one does not open automatically and type the following in the window: ee264a cd ece-cadence icfb & A window containing text should appear at the bottom of the screen, labeled icfb .... This is sometimes called the CIW (Command Interpreter Window). A window explaining new features should also come up; in this window, select Edit > Off at Startup, and then close it. The CIW window is the main Cadence window, and much useful information is displayed here. If Cadence isnt doing what you expect, it is often helpful to look here to read the error messages. You may find it helpful to enlarge the window. You now need to bring up the library manager. To do this, select Tools > Library Manager in the CIW. A Library Manager window appears. Notice the library ece264lib.

This library contains most if not all of the IC components (e.g., transistors, resistors, etc.) that will be used in this class. II. Creating a Design

The creation of a simple transistor amplifier is described in this section. The following notational conventions are used in the description: The text [LIB] should be replaced with 164 if you are taking ECE164 and by 264 if you are taking ECE264. Bracketed letters such as [a] denote keyboard shortcuts (bindkeys) which can be used instead of the menus or buttons to accomplish the given task. To use them, place the pointer over the appropriate window and simply press the key. Please note that these bindkeys are case sensitive. For letters enclosed by square brackets such as [a], the pointer must be in a schematic window. For letters enclosed by curly brackets such as {a}, the pointer must be in a waveform window. A summary of the most useful bindkeys is listed in Appendix A. Creating a new library and cellview 1. Create a new library named tutorial: (a) In the CIW, select File > New > Library, and a New Library window will appear. (b) In the Name field, enter tutorial. (c) Verify that the path (near the bottom of the dialog box) points to your working directory (or wherever youd like to place all your class libraries). This path will by default point to the directory from which you invoked Cadence (d) Select the Don't need a techfile button, then click OK. In the Library Manager, an entry tutorial should appear. Create a new schematic cellview in our new library. (a) In the CIW, select File > New > Cellview..., and a Create New File dialog box appears. (b) Ensure that the tutorial is selected for Library Name (by clicking on the square button). Type tutorial in the Cell Name field as well. (c) Type schematic in the View Name field. (d) Select Composer - Schematic in the Tool field if it is not already selected, then click OK. An empty schematic window appears. (e) In the schematic window, select Design > Save. You have now successfully created a cellview. Placing the Parts You will now place symbols on the Schematic Window as shown in Figure 1.

2.

Figure 1: Initial parts placement. 1. Find and place the pMOST symbol as follows: (a) With the schematic window active, press i on the keyboard. An Add Instance dialog box will appear. The i key is a bindkey, or shortcut key, to this dialog box. You can also get the same dialog box by click on the Instance button on the left hand side of the schematic window (it looks like a little DIP), or by going to Add > Instance in the menu bar (there is an i next to this menu selection, notice). There are many shortcuts like this throughout Cadence, and you can create more if you wish see the online help. Note also that at the bottom of the schematic window and the CIW, the instructions Point at location for the instance appears, along with information about what the mouse buttons do: mouse L: .... Its often important to look at these messages to figure out what is going to happen when you press the left/middle/right mouse buttons. The mouse buttons are bound to Skill functions, but can be reconfigured - see the online help for more details. (b) In the dialog box Library field, enter ece[LIB]lib. For Cell, enter pmos4. For View, enter symbol. You can also use the Browse button to invoke the Library Browser to find a part. (c) When you move the mouse over the schematic window, you will see the outline of a 4terminal pMOST. Move the cursor to the desired location and press the left mouse button. Repeat for the other pMOST transistor. (d) To stop placing pMOST symbols, press ESC on the keyboard (with the Schematic Window active), or click the Cancel button in the Add Instance dialog box. Place an nMOST using a similar procedure. This time, try using the Library Browser to place the nmos4 symbol. Position it relative to the pMOST symbols as shown in Figure 1, then press ESC to get rid of the Add Instance window. Next, place the DC Current Source symbol as follows: (a) Press i as before, then click Browse to bring up the Library Browser. (b) Select ece[LIB]lib in the Browser library list, then find the idc component symbol using the scroll bar. Highlight this component in the browser by left-clicking on idc. Sometimes you may need to specify that you want to place the symbol version of this part. (c) Move the mouse over the schematic window and place it in the desired location. Dont press ESC yet. Go back to the Library Browser and find the vdc part. Place it. Similarly, place the vsin, res, and five copies of gnd. Finally, press ESC (remember, 3

2.

3.

4. 5.

6.

the Schematic Window must be active) to stop placing parts. If you need to move any of the parts, use the following procedure: (a) Press M (stretch) or m (move). Note the message at the bottom of the Schematic Window. At this point, there is no difference between these two commands. But when wires are attached to the parts, M will move the wires as well, whereas m will just move the part. (b) Click on the part you wish to move. Again, keep an eye on the bottom of the Schematic Window. Follow the instructions there. Repeat as needed. (c) Note that you can also move items by moving the cursor over the item, pressing and holding the left mouse button, moving the mouse, and then releasing the mouse button. Editing the Symbol Properties

Once all the parts are placed on the schematic, you can set property values that are specific to the design on each symbol. Figure 2 shows many of the property values that you will add in this part of the tutorial. The vsin symbol has many properties: acm is AC Magnitude, the amplitude of the AC signal applied to the linearized circuit (small signal circuit) during an AC Analysis. The acp is the AC Phase, vo refers to DC Offset, and vm refers to Amplitude, the amplitude of the signal applied to the large-signal (non-linear) circuit during a Transient Analysis.

Figure 2: Symbol property values. 1. Use the following procedure to change a symbols properties. Before you begin, make sure that you have pressed ESC to clear the last action performed (the bottom line of the Schematic Window should read >): (a) Move the cursor to a location where there are no parts. Then press q. An Edit Object Properties dialog box will appear. (b) Click on the item whose properties youd like to change. The dialog box will expand to display a list of properties that can be changed. If you cant see any properties, make sure that the CDF box is checked near the top of the Edit Object Properties window. (c) In the list of properties, edit those that you would like to change or specify. DO NOT include units such as Volts or Ohms - youll notice that these are filled in automatically after you move on to the next property. DO NOT press return after you enter a property - use the mouse or use the TAB key to proceed. DO specify abbreviations for scientific notation such as k (kilo),u (micro), m (milli), M (mega), p (pico), f (femto). 4

2. 3.

4.

(d) Click on the next part to change its properties. Cadence will ask whether you want to save the property changes from the old part - say yes. (e) When youre done entering properties, click Cancel at the top of the Edit Object Properties dialog box. Change the names of the transistors according to Figure 2 by changing the Instance name field. Note: The name must be unique. Also insert the values for the transistor widths and lengths. Flip the display of transistor M0 by first pressing m and clicking on the transistor to move it. While you are holding it, press R on the keyboard. The symbol outline should flip. Place the flipped part as shown in Figure 2. Note that the ac magnitude and phase of the vsin part are not displayed by default. Edit the properties of this part (with the q key, and then look at the AC Magnitude property. Click on the button to the right of the property value, and a list of choices will appear. Select Both. This will cause this property to be displayed on the schematic. Wiring the Schematic

After the symbols are placed and the properties are set, you can wire the parts together as shown in Figure 3 by doing the following: 1. One way to create a wire between two ports is as follows: (a) Position the mouse cursor over the first port (for example, start with the top of the constant voltage source). (b) Click and hold the left mouse button. (c) Position the mouse cursor over the second port (the Vdd symbol above the Vdc symbol). (d) Release the left mouse button. (e) Repeat steps a through d to connect each Ground and Vdd symbol to the associated parts, as shown in Figure 3. 2. To connect the Gate terminals of the pMOSTs to the Drain terminal of M1, do the following: (a) Press w on the keyboard. Note the instructions at the bottom of the Schematic Window. (b) Click and hold the left mouse button. (c) Position the cursor over the mid-point of the wire between the Gate terminals of M1 and M2, and click the left mouse button. (d) Move the mouse cursor four grid-points down, and click the left mouse button. (e) Move the mouse cursor six grid-points to the left, and click the left mouse button. This completes the connection. 3. Complete the remaining wire connections as shown in Figure 3.

Figure 3: Schematic Wire Connections. Modifying Wire Attributes If you do not label wires, Cadence automatically provides names for each wire, such as net30. It can be helpful later on during design and analysis if you label the wires with meaningful designators that are easy to understand and refer to. To add the attribute vout to the wire shown in Figure 3, do the following: 1. 2. 3. 4. Press l (for label) on the keyboard. An Add Wire Name dialog box appears. Enter vout vin in the Names field and press Return Move the cursor until the dot is on top of the wire to be labeled vout. Left click once with the mouse. The label will be attached to the wire, and the label you are moving with your cursor changes. Place the vin label in an appropriate spot. Make sure the dot is on top of the wire before you left-click.

Finally, add a single instance of ece[LIB]lib title underneath your schematic. Please make sure that this is always placed in all your schematics. At this point you have a completed design that is ready to be analyzed. In the next part of the tutorial, you will simulate the amplifier. First, save the design by clicking the checkmark icon (the Check and Save icon) on the left hand side of the Schematic Window (top). Check the CIW. There should be a message saying that Schematic Check completed with no errors. Whenever you make a change to your design, youll need to check and save before you simulate. Otherwise, you may get an error, which will show up in the CIW window. Again, the CIW is extremely important for finding errors. You should read any errors carefully, and sometimes warnings are important too. III. Analyzing the Design Before performing the circuit analysis, you need to start the analog environment by going to Tools > Analog Environment in the schematic window. A new window called the

Simulation Window will appear. Next you need to tell Cadence where to find the model library. For this class, we have a single model library file, called cmos018.scs, which contains an nMOST model named N, and a pMOST model named P. The symbols were using by default have these names specified in their symbol properties (look at the properties for one of the transistors). If you ever decide to use a different symbol, youll need to make sure the Model name property is correctly filled in. To tell Cadence where to look for the model file, go to Setup > Model Libraries in the Simulation Window. In the Model Library File field, enter: /home/linux/ieng6/ee164f/your_login_name/ece-cadence/cmos018.scs (if you are taking EE164) or /home/linux/ieng6/ee264a/your_login_name/ece-cadence/cmos018.scs (if you are taking EE264a) where your_login_name should be replaced by the name of the account under which you logged into the system (e.g., bobama). Then click on Add (NOT OK). Youll see the path placed in the list of Model Library Files. Now click on OK. Finding the DC Operating Point and Performing a DC Sweep In this section, youll find and annotate the DC operating point, and youll sweep the input voltage to find the correct bias voltage for the nMOST transistor. 1. 2. 3. Now go to Analyses > Choose.... A new dialog box will appear. [a] In the new dialog box, select the dc button. Check the Save DC Operating Point box. This will allow us to annotate node voltages later. Finally click OK Well now perform our first simulation. Click on the Netlist and Run icon, which is the green traffic light on the right hand side of the Simulation Window. If this is your first time running Cadence, a Welcome menu appears close it. A new window will appear, hopefully saying that the simulation was successful, and providing a brief summary of the simulation convergence. [s] If everything went well, go to the Simulation Window, and select Results > Annotate > DC Node Voltages [d]. Note that the voltages at each terminal of each device are now marked on the schematic. Now go to Results > Annotate > DC Operating Point [D]. Note that important voltages and currents are now marked on each device. You can quickly see whether the devices are biased properly. You can remove this annotation by using Results > Annotate > Design Defaults [^d]. You should see a problem with the node voltages. The node vout should be about 2.4V. This means that the top pMOST is operating in triode, and this amplifier will not work properly. Youll now fix this using a DC sweep to find the correct bias point. Go back to the Simulation Window, and select Analyses > Choose... [a]. Under Sweep Variable on the DC Analysis Form, select Component Parameter. The form will become larger. On the expanded form, click the Select Component button. You will be prompted to select a component on the schematic. Select the vsin symbol at the nMOST input. A new window will appear, and you should select dc as the parameter you wish you vary, then click OK in the new window. Fill in the rest of the form so that the voltage is swept from 0 to 2.5V. Set the sweep type to Linear, and set the number of points to be plotted to 500. When youre done, click OK on the Choose Analyses window. Now you need to select an output to plot. To plot a voltage, use the following procedure: Go to Outputs > To Be Saved > Select on Schematic in the Simulation Window. Left-click on the vout and vin nets in the schematic window, and then press ESC. This step is typically not done as you can simply click on the nodes you want to plot after the simulation is complete. However, go ahead and try it this time. 7

4.

5. 6.

7.

8. 9. 10.

11.

12. 13.

14. 15.

Go to Outputs > Setup.... In the Setting Outputs window, click on the vout line on the right hand side. Then select the Plotted button, and press Apply. Do the same for the vin line. Then click OK in the Setting Outputs window. Finally, we can perform the DC Sweep. Press the green traffic light. The Waveform Window with the simulation results should appear. We need to find the input voltage which will place our output bias at roughly Vdd/2. Move your cursor over the waveform plot of vout. Youll see the x and y coordinates at the top of the window. Using this method, select the DC value of vin which will give an output of approximately 1.25V. You should get about 550mV. Update the vsin symbol with this new DC offset voltage. Repeat the DC simulation, and verify from the annotated voltages that your output is now roughly at Vdd/2. If so, youre ready to move on to the next simulation. But first, unless you like to repeat things, you should learn how to save the simulation state. Go to Session > Save State..., and youll be prompted to save your current state. Enter the name of a state of your choosing, or just stick with the default. This state can be reloaded later (using Session > Load State..., and you wont have to enter all of the setup data again. Performing a Transient Analysis

In this section, well look at the amplifiers large signal response to a sinusoidal input signal at 100kHz. 1. 2. First, turn off the DC Sweep analysis by bringing up the choose Analysis window and unselecting the Enabled box at the bottom of the form. Select the tran button. Enter 100u in the Stop Time field. If you want, you can also click the moderate button, but this is not necessary. It is recommended by Cadence you never click the other two. Click the Options button. A new dialog box appears. In this Transient Options window, change the following attributes: step to 10n, maxstep to 10n, then press OK. These options make sure that enough points are taken during the transient analysis. They will be different for other simulations in this class, and youll need to experiment with them. Typically, you can leave this field blank and see how well the transient results look. If they seem choppy, go ahead and enter a number here. Refer to the Cadence documentation for more information on the other parameters on this form. Youre now ready to simulate, and you havent changed the schematic, so you can press the yellow traffic light to simply run the simulation. After a few moments, the waveform window should appear with a nice sinusoid. You can remove the input sinusoid (we know its just a 2mV peak-to-peak wave) to get a better view of the output. Go to Curves > Edit in the Waveform Window, and turn off the vin waveform or click on the waveform and press del. To measure the peak-to-peak amplitude of the output, use the Markers {a},{b} menu to place markers A and B at the highest and lowest points of vout. From the display at the bottom of the window which will appear after you have done this, you should find the peak-to-peak amplitude to be about 63mV, meaning the circuit has a gain of about 30. Performing an AC Analysis In this section, well look at the amplifiers frequency response. Hopefully youre becoming proficient with Cadence now, so not as much detail about the individual steps will be provided. 1. Bring up the Choosing Analyses window, and disable the transient simulation, and the sweep portion of the DC simulation. Then click the ac button, and set up this simulation to sweep frequency from 100Hz to 1GHz, with 100 points per decade. You will need to change the sweep type to logarithmic. Netlist and Run the simulation (or just run it, if your schematic is unchanged). [s] In the schematic window, we will now create a Bode plot. The easy way to do this is to go to Axes and change the scale of the y-axis to be logarithmic. Well use a different approach, using 8

3.

4. 5.

6.

2. 3.

4.

5.

the Waveform Calculator, an important Cadence tool. (a) First, add a new subwindow to plot our new graph in. Do this by going to the Window > Subwindows... menu option, or by clicking on the subwindow icon on the left-hand side of the Waveform Window{S}. Make sure that the new subwindow is active by leftclicking in its area. Now click on the calculator icon on the left side of the waveform window. The calculator will appear. By default, the calculator uses RPN (Reverse Polish Notation), but this can be changed in the Options menu item, if youd like. For the following, I assume youre using RPN. (b) Click on the wave button in the calculator. You will be prompted to click on a wave select the vout waveform. The expression for this wave will appear in the calculator window. (c) You want to plot 20*log10(vout). To do this in RPN, now click on the log10 button, then enter 20 on the keypad, then press the multiply button. You should see the calculation take place in the calculator window. If you prefer, you can simply type *20 at the end of the expression in the calculator window. in other words, use it as a normal calculator. (d) Now press the calculator plot button. The new wave will appear in the subwindow. You can also make measurements with the calculator. If you click and hold the Special Functions button, you will see a list of functions. Select bandwidth. A form will come up, and you can click OK. Then press the print button on the calculator. This will bring up a window with the measured 3-db bandwidth of your circuit. Youre done with the AC Analysis now. Weve only scratched the surface of what can be done with the Waveform Calculator. Feel free to experiment more with it if you wish. Then go to the next section. Performing a Parametric Sweep

Sometimes its important to perform sweeps of two variables simultaneously. This section shows you how to do this. We will sweep the nMOST bias voltage over a few values, and plot the frequency response of the amplifier for each value. This will demonstrate how drastically the bias point (which determines whether transistors are saturated) can affect circuit performance. 1. For a parametric analysis, you must first define the variable to be parameterized (the one which takes on discrete values). In our case, this will be the offset voltage of the vsin symbol. Go to this symbol and edit its properties. In place of the number which you currently have entered in the Offset voltage field, enter vgs. Then click OK. Check and save. Go to the Simulator Window and select Variables > Copy From Cellview. You will notice that vgs appears in the Design Variables subwindow. Go to Variables > Edit... (or use the shortcut) and set the value of vgs to the bias voltage you found during the DC Sweep portion of the tutorial. Next, you will need to re-enable the DC simulation. To do so, go back to the analysis chooser and select the DC analysis button. Choose to enable this simulation; however, make sure you disable the component parameter sweep. Now netlist the schematic. (You can find the option to just netlist under Simulation, or you can just netlist and run. It doesnt make any difference. We just need to netlist somehow.) This is a critical step. If you forget to do this, the parametric analysis will seem to do nothing. In the Simulation Window, go to Tools > Parametric Analysis.... Set up the form so that vgs is swept from 0.4V to 0.8V in 9 total steps. In the same form, go to Analysis > Start to begin the analysis. When the Waveform window comes back, it should have multiple distinct curves, showing the frequency response for each value of vgs. Notice how dramatically the gain drops off away from the correct bias point! A Note on Measuring Currents You select a current to be plotted in much the same way as you select a voltage. When selecting outputs to be plotted (see the beginning of Analyzing the Design ), click on the terminal of a

2. 3. 4. 5. 6.

7.

device rather than a wire. A circle should surround the terminal to show that the current flowing INTO this terminal will be plotted. A few caveats: first, sometimes it can be very difficult to select a node - you may have to click on the center of the symbol at which you want to measure current, which will select all nodes of that symbol, and then delete the currents you dont want in the Simulation Window. Second, the transistor symbols used for the class dont allow their currents to be plotted for some reason. Remember, you can always put in a zero-volt voltage source if you need some usable terminals for measuring current!

A Note on Printing/Plotting Some information on customizing printing was given earlier in this tutorial. In order to actually bring up a plotting dialog box, you can go to Design > Plot > Submit.. in the Schematic Window, or Window > Hardcopy in the Waveform Window. Youll have to experiment with the forms to get what you want. The forms are quite versatile. Keep in mind you can print to a postscript file as well as directly to a printer. When printing, it is suggested that you do the following: (a) Unselect the [Plot with] Header button. (b) On the Plot options page: i. Unselect the Mail Log to button. ii. Select the Center plot button. [Not available when printing waveforms] iii. Select the Fit to page button. [Not available when printing waveforms] iv. Check that the correct printer is selected (or) v. If you want to print to a postscript file, select the Send plot only to file button. If you decide to print to a file, the output will be a postscript file. This may be inconvenient for some students. If this is the case, you can run ps2pdf <filename.ps> to convert the postscript file to a PDF. This program, however, is not available in your path, by default. You will need to add it to your path before ps2pdf will work. To do so, at the UNIX command prompt (not the CIW!), type: set path = ( $path /software/common/ghostscript-8.0.0/bin )

Note: Due to a bug in Cadence, waveforms are printed as they appear on the screen. In other words, if the waveform window is small, on the screen, the printout will be equally small. It is suggested that you make the waveform windows large to get the clearest printouts. Notes Creation of file (Tex) 1/1/2002 Updated file for ECE264A. Converted from Tex to Word and updated for ECE[LIB] 3.0 K. Wang 9/20/2004 design kit. Added section on Bindkeys (Appendix A). Updated paths. 3.1 K. Wang 9/28/2004 Fixed errors. Expanded on printing section. 3.2 K. Wang 9/29/2004 Added section on ps2pdf. 3.2.1 K. Wang 9/29/2004 Added lines to set up ps2pdf. 3.3 K. Wang 1/5/2005 Generalized library statements to accommodate both 164 and 264. 3.4 K. Wang 9/22/2010 Recreated document from v3.3 3.41 I. Galton 9/28/2010 Updated to account for modified installation details University of California at San Diego Revision Author 1.0 2.0 A. Lewis Date

10

Appendix A: Useful Bindkeys Bindkeys are keyboard shortcuts used within Cadence. Each tool within Cadence, such as the schematic editor and Spectre simulator, has its own set of bindkeys. These can be configured by the user if desired. Many Cadence users find that using bindkeys greatly speeds up the work. ^ means control and means Shift. Within the schematic window: Key ^q Edit component display i Insert instance c Copy m Move M Stretch e Descend into block and edit E Descend into block and read ^e Ascend from block f Fit to screen g Go to error markers G Remove all error markers ^g Bring up selection filter window r Rotate R Flip q Edit component u Undo w Wire W Thick wire z Zoom in Z Zoom out p Add pin l [lowercase L] Add wire label Description

Within the schematic window after Analog Artist (Spectre) has been started: Key Description a Analysis selection window d Annotate DC operating voltages D Annotate DC operating condition (ids, gm, ) ^d Show design defaults (Removes all annotation) s Check and save schematic and start a simulation 1 Direct plot DC 2 Direct plot AC magnitude (dB) 2 Direct plot AC magnitude (dB) and phase 3 Direct plot transient 4 Direct plot transient difference [select two nodes] 4 Direct plot transient sum [select two nodes] Within the waveform window: Key q Update results s Strip mode c Composite mode S Add subwindow ^s Delete active subwindow r Clear waveform window a Show marker A b Show marker B z Zoom f Fit to screen Description

11

Anda mungkin juga menyukai