A Brief User's Guide to Awaves
Sameer Sonkusale

  This tutorial was initially written by the author while at University of Pennsylvania in the year 2001. A lot has changed since then, and if you think this tutorial can use a little update, contact me.


Awaves is a graphical user interface for hspice simulations.  Awaves lets you view and  perform measurements after you have executed hspice simulations successfully. This tutorial gives a basic introduction to using awaves on unix.

It is highly recommended that you go through the help menu available with Awaves to learn about the many more features provided by the tool. To learn more about hspice, visit this link.

It is required that you have  an hspice filename bearing a ".sp" extension. This is the syntax followed by the Hspice and Awaves users and is a default extension for spice netlists. It is also important to include a .option post statement in your hspice input netlist file.  This will enable hspice to generate files that can be read by awaves for viewing and measurement purposes. After you run hspice on your netlist file, a few output files would be generated depending on the type of analysis carried out.

For example, let's assume that you have a file named "inverter.sp". If you run hspice as in "hspice inverter.sp > inverter.lis",  you would generate the following files :
inverter.tr# -> if you have a valid .TRAN statement in your input netlist file
inverter.sw# -> if you have a valid . DC statement in your input netlist file
inverter.mt# -> if you have a valid .MEAS statement in your input netlist file
There are a few other kind of files that are also generated, but not discussed here. For more information you can refer to the hspice reference manual.

How to start Awaves ?
Run "awaves" on any unix ee/seas machines having EE CAD tools installed by typing "awaves" on the unix prompt.
This will open up a small window, after which a main waveform window will open up. This window is the AvanWaves window.
How to open and close a design ?
Go to Design-> Open and make sure that you find the appropriate design (hspice netlist) file ending with a .sp extension , to be viewed. This will add the design to the present Awaves database. You can open multiple designs at the same time. Click on the Filter button and make sure that you are in the right directory, if you are unable to see the design file you are looking for.
A Results Browser window will open up. It will have the listings of the different analysis carried out by you under

Go to Design-> Close to close the appropriate design files from the awaves database.

How to switch between different designs in the database ?
Go to Design -> Current and choose the appropriate design file.
How do I view and measure results ?
If you do not have the Results browser window, click on the left most button at the top. The button looks like this
. The results browser window has a listing of different analysis and measurements carried out by you. Click on any of the listings and you will now be able to view the results. The "Type" section consists of the type (voltage, current etc.) of the quantity and the "Curves" sections consists of all nodes, parameters listings. Double click on any of the curves and the curve will be drawn in the Avanwaves window. You can also drag the curve from the results browser to the waveform window using the middle mouse button.

Use the "Window" and the "Measure" button at the top in Avanwaves window to zoom in, out and to make different measurements. Use the help button if you need any extra information about each of the features.

How do I open delete a curve ?
Click on the name of the curve in the WaveList section of the Waveform window. then click on the  Panels -> Delete curve to delete the selected curve.
How do I view plots in different sub-windows rather than on top of each other ?
Click on the Window -> Stack/Overlay modes to switch back and forth between two modes, one in which the plots are plotted on top of each other and the other mode is where the plots occupy different sub windows and don't overlap with each other.
Can I have two different Panels for measurement ?
Yes, you can have multiple panels. By clicking on Panels-> Add Panel, you can open another waveform window to plot a different set of curves. To switch between panels, click on the panel number at the bottom of the Panels pull down menu.
How do I plot a mathematical expression involving different curves ?
Click on the second left button . This will open up an "Expression builder" window.  The window contains a set of mathematical expressions and operators that can be used to form an expression. To choose a curve to be included in an expression, click on the curve in the Results Browser window and then drag the selection using the middle mouse button to the the Expression section in the expression builder window. Multiple curves can be selected accordingly. Let's do an example:
Suppose you have to perform log10(v(1)/v(2))
step1 : Type log10(   in the expression section
step2:  Drag v(1) from results browser to the expression section using the middle mouse button. You now have log10(v(1)
step3:  type a '/' in the expression section. So you now have log10(v(1)/
step4: Drag v(2) from the results browser window to the expression section using the middle mouse button. You now have the expression log10(v(1)/v(2)
step4: Type a ")" in the expression section to complete the parenthesis.

Once the expression has been entered in the expression section of the expression builder window, give a name to the expression in the Result section. Click on Apply. The name will appear in the Expressions window next to Operators. To plot this curve, click on the name of the expression and then drag this name to the waveform window using the middle mouse button.

You can also use exisiting expressions to form new expressions.

How do I change my x axis to something other than a default ?
Say you want to change the x axis from "time" to "log10(2*time)". Click on Time in the Type section of the Results browser window. Then click on the time variable in the curves section. Using this variable form an expression "log10(2*time)" in the expression builder window and give it a name. Let's say the name is "logtime". Drag this name to the results browser window where it says x axis. This will change the x axis.

Remember to do this on a new panel when there are no waveforms in the window. Otherwise, the new x axis will not take effect and will give an error.

There are few other features which can best be learnt by exploring it yourself. The help button accompanying the Awaves window is very helpful. So please use it.

Initially Created by Sameer Sonkusale < sameers@ee.upenn.edu >
Last updated March 23rd 2001