Help Using Remote X for UNLV Students

 

The UNLV Design Software page is found here

 

Request an account on the Cadence servers to run Cadence, via email, from Dr. Greg from your UNLV rebelmail account (important) no earlier than one 

week before the semester starts.

Ensure you supply, with the email request, your student ID number and the course you are taking or, if you 

are doing research, your advisor's name. You can contact Dr. Greg for technical problems. 

 

If using Windows download, and install, MobaXterm (Installer edition). 

Start MobaXterm by double-clicking on its desktop icon.

The screen shots seen below should appear. 

Click on "Start local terminal" to start a session.  

 

ssh (secure shell) into the server using, at the prompt as seen below, ssh -Y username@csimcluster.ee.unlv.edu 

 

If you are using Mac OS X (assuming X11 came pre-installed, if not, then get it here) or Linux then you can ssh from a 

terminal window (you don't need MobaXterm).

A sftp (secure file transfer protocol) application for the Mac (or any platform) is FileZilla

  

Note!!! MobaXterm or a terminal window on a Mac will work from home but it will be slow!!! Use a VPN to UNLV (you 

must have an ACE account) and VNC viewer as discussed here if you are running Cadence from home (off-campus).  

  

f1.jpg

  

x1.jpg

 

The first time that you login you will need to change your password. 

The new password will have to be: at least 8 characters long, contain a capital letter, contain a 

number, and contain a special character (@, !, %, $ etc.).

 

You may find it useful to review the capabilities of MobaXterm here.

 
After entering your password something similar to the following screen should appear.
Notice the directory listing circled below.
Also notice: 1) that the left window pane is for secure file transfer protocol (Sftp) and 2) the other tabs (Macros,
Tools, and Sessions) on the left of the image.
 

x2.jpg
 

 We can use the instructions in IC61_readme to simulate, for example, the Cadence examples from the books.

After setting-up the Cadence examples the reader should be able to also use the books' Mentor examples.
We'll modify the directions (a little), in the IC61_readme, since we are using Windows and MobaXterm instead of a remote desktop.

 

Download, to your desktop, the NCSU Cadence Design Kit (CDK) version 1.6.0 beta from https://cmosedu.com/cmos1/cadence/NCSU-CDK-1.6.0.beta.tar    

The downloaded archive file's name is NCSU-CDK-1.6.0.beta.tar

Upload NCSU-CDK-1.6.0.beta.tar to your home directory on the server using the upload icon seen below (navigate to the desktop).

If using a Mac use FileZilla to upload the file to your home directory on the server. 

 

x3.jpg

 

Use the UNIX command ls -l (list with the long option) on the terminal command line to show the archive in your home directory.

 

x5.jpg

 

Next let's extract the archive using: tar -xvf NCSU-CDK-1.6.0.beta.tar followed by another tar -xvf ncsu-cdk-1.6.0.beta.tar.gz

Once you've started typing the name hit the Tab key for help autocompleting (a UNIX trick). 
  
x6.jpg
 

Next create a new directory, using the command mkdir CMOSedu, in your $HOME account. 

Copy everything in the directory $HOME/ncsu-cdk-1.6.0.beta/cdssetup into $HOME/CMOSedu using:

cp -a $HOME/ncsu-cdk-1.6.0.beta/cdssetup/. $HOME/CMOSedu/

 

In the file browsing area, double-click on the directory CMOSedu, to show its contents (below).

 

x7.jpg
 
Rename cdsinit, simrc, and cdsenv to .cdsinit, .simrc, and .cdsenv (add a period).
Right-click on the name of the file and select "Rename" as seen below (rename all three files).
 
x8.jpg
 

Navigate back to your $HOME directory.

You can do this by double-clicking on the icon seen below.

 

x9.jpg

 

Next we need to locate where the Cadence built-in libraries (analogLib, functional, and sbaLib) are installed on the server(s).
On the csimcluster.ee.unlv.edu server cluster the path to these libraries is hidden and located at:
 
/share/apps/cadence/IC615/tools.lnx86/dfII/etc/cdslib/artist/

You can type this path in manually (in a terminal window or the sftp locator in MobaXterm) to see the directories of the libraries on the cluster.
 

This section is for reference and can be skipped if using the server csimcluster.ee.unlv.edu.
 
If using a different server (not csimcluster.ee.unlv.edu) you will need to find the location (path) of the Cadence built-in
libraries (analogLib, functional, and sbaLib).
Below is an example of this path on a different server, that is,
 
/usr/cadence/IC615/tools.lnx86/dfII/etc/cdslib/artist/
 
x12.jpg 


 
Navigate back to $HOME/CMOSedu and, again, open the file cds.lib (right-click on the file in the browser and open with a text editor).

Add the following lines to the bottom of this cds.lib file to point to the built-in Cadence libraries as seen below.
 

DEFINE analogLib /share/apps/cadence/IC615/tools.lnx86/dfII/etc/cdslib/artist/analogLib

DEFINE functional /share/apps/cadence/IC615/tools.lnx86/dfII/etc/cdslib/artist/functional

DEFINE sbaLib /share/apps/cadence/IC615/tools.lnx86/dfII/etc/cdslib/artist/sbaLib

 
x13.jpg
 
Next (we are almost done ;-) in your home directory open the .bashrc file by double-clicking on it.
If you can't see the .bashrc file (files that start with a period are "hidden" files in UNIX) click on the following icon.
 
hidden.jpg 
  

Add the following lines in the .bashrc file. The result is seen below.
 

export SPECTRE_DEFAULTS=-E

export CDS_Netlisting_Mode=Analog

export CDS_LOAD_ENV=CWDElseHome

export CDK_DIR=$HOME/ncsu-cdk-1.6.0.beta

 

x10.jpg

 

In the terminal window, in your home directory, type the command . .bashrc (period, space, period bashrc) to re-source the .bashrc file.

You can also use source .bashrc in place of . .bashrc  to re-source the file.

 

x11.jpg

 

Download Cadence_IC61_CMOSedu.zip (right-click on the link) to your PC's desktop

Upload, like we did earlier, this zip file to $HOME/CMOSedu

Change directories into CMOSedu and unzip the file using the command seen below.

 

x14.jpg

 

Add the 40 "DEFINE Ch..." statements in cds_lib_IC61.txt to the bottom of cds.lib file.

You should know how to edit this file since we've done it already (right-click on it and open with a text editor).

 

x15.jpg

 

In the example directory CMOSedu type virtuoso & to start Cadence.

 

x16.jpg

 

If Cadence doesn't start this first time, e.g., it hangs, then 

    1. type exit in the terminal window to gracefully close the connection with the server
    2. close your MobaXterm window
    3. restart MobaXterm
    4. ssh into the server
    5. cd into CMOSedu and start Cadence as done above

If you are using a newer version of virtuoso you may be asked to convert some files (select Yes/OK).

You may be asked to use a newer license or update older files (both of these are okay).

 

Cadence's command interpreter window (CIW) will open as seen below.

 

x17.jpg

 

Above, use the menu commands Tools -> Library Manager to start Cadence's Library Manager, below.

 

x18.jpg

 

Let's select an example from the book. Click on Ch1_IC61 and Fig1_21.

Then right-click on the schematic and select Open as seen below.

 

x19.jpg

 

The following schematic view will open.

 

x20.jpg

 

Select, from the menu, Launch -> ADE L (as seen below) to start the Analog Design Environment.

If a window pops up asking to check out a different license select "Yes."

 

x21.jpg

 

Next, again on the menu, select Setup -> Simulator/Directory/Host and select spectre (Cadence's SPICE simulator) as seen below.

If your Internet connection is slow you might have to press, and hold, the drop down arrow in order to select spectre.

 

x22.jpg

 

Since the books' examples use spectre it's a good idea, so we don't have to do this step every time we simulate, to add

envSetVal("asimenv.startup" "simulator" 'string "spectre") to the bottom of your .cdsinit file in CMOSedu.

Do this now. After you exit, and then start Virtuoso, the default simulator will change from hspiceD to spectre.

 

Next select Session -> Load State as seen below.

 

x23.jpg

 

Then select Cellview followed by OK as seen below.

If you are using a newer version of Cadence select Yes/OK to convert to the newer state.

 

x24.jpg

 

The following Virtuoso Analog Design Environment (ADE) window will appear.

Hit the green arrow button to run the simulation. 

 

x25.jpg

 

The following window will open showing the simulation results seen in Fig. 1.21 of the CMOS book.

 

x26.jpg 

 

Return to Cadence Design System at CMOSedu.com

 

Removing Cadence lock files - The *.cdslck files are used to ensure, when multiple users are editing cells in a design directory,

that two users don't edit the same cell at the same time. If your Cadence session crashes these files will not be removed since 

you haven't exited the cell correctly. The result is that you won't be able to edit the cells you were working on when you

re-start Cadence. Since you are the only user editing cells in your account you need to delete, before starting Cadence again, the

*.cdslck files associated with the locked cell(s). Additional information can be found here.

    

Also note that when using a cluster of servers you need to manually enter the location of a user. For example you may want to copy 

examples from the course webpage. You might use the UNIX command cd /home/ee421_ecg621_f14 to go to this directory. You can 

also enter it manually (because the user ee421_ecg621_f14 isn't showing up) in MobaXterm or FileZilla sftp by typing out the path 

as seen below.

 

image.jpg

 

Other random comments:

 

You can kill abandoned and active (kill all) processes using kill -9 -1  

This logs the user out too so you'll have to login again.  

 

If you are having problems running Cadence (after virtuoso & command, Cadence 

doesn't start) do a kill -9 -1 (to log out of all sessions). Log back in and then do 

a rm ~/*CDS.log* (to remove the Cadence Design System log files in your home 

directory which can get in a state that keeps you from running Cadence).

 

Using the htop command will show you the logged in users and the resources they are using.