Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronic Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Register Log in

How to install NCSU CDK under linux with bash shell

Status
Not open for further replies.

lcg22

Member level 5
Joined
Sep 10, 2002
Messages
84
Helped
1
Reputation
2
Reaction score
1
Trophy points
1,288
Activity points
597
how to install and set ncsu?

1.$CDS_DIR == The top level of the Cadence installation tree.

is it $CDSDIR? is it c@dence_!C_install_directory or c@dence_!C_install_directory/tools or c@dence_!C_install_directory/tools/dfII ?

2.$IC_DIR == The top level of the IC STREAM.

what does this mean?


3.Make sure your user .cshrc setup includes the all of the items listed at the bottom of the page.

Where is .cshrc? I am using bash shell.
 

electronrancher

Advanced Member level 1
Joined
Mar 24, 2002
Messages
447
Helped
45
Reputation
90
Reaction score
11
Trophy points
1,298
Activity points
6,942
ncsu shell bash

like you said, .cshrc is for c shell. you will be modifying .bashrc most likely.

I ran into this same problem about how unclear the ncsu pack is about directories, but i forget which one fixed it.. I do remember that the install script makes a ton of symbolic links that are MISSING the last directory in your CDSDIR variable, like they added a /../
That probably means /cadence/tools is the right one, but you can debug it by running the script with whatever you have now - dfII will puke an error if it can't find the libraries, then just rerun the script with the proper fixes in your CDSDIR.

I got the libraries working, but the menus were screwed up - meaning my dfII could no longer File->Open. Umm, not too good. I deleted the whole install and am now only using their libraries, not their SKILL extensions.

If you get the menus working let me know - I decided it wasn't risking my entire installation again, since I can use the T$MC libraries by dumping them into my path - that's all I wanted anyway!
 

electronrancher

Advanced Member level 1
Joined
Mar 24, 2002
Messages
447
Helped
45
Reputation
90
Reaction score
11
Trophy points
1,298
Activity points
6,942
ncsu cdk and cshrc file

ok, good thing i keep trying -ncsu extensions are definately worth installing! much thanks to those hardworking students like us!

I still have problems where spectre cannot find the models for my transistors, etc. Only R and C seem to simulate since they probably need no model! If you guys know how to fix - post it here. Yes, the libraries are installed and included with library path editor in my project's cds.lib.

Ok, enough of my questions - These env. variables get the kit working in bash if you want to paste into .bashrc.. This is using all the stuff I mentioned in the other post, and the same generic user "cad".

1) Again, assume user "cad''s has ic5 installed in /home/cad/cadence. You unpack the tar in /cadence and it creates /cadence/local. You'll need to modify your own paths based on that discription.
remember, our original .bashrc had stuff like
CDS_ROOT=/home/cad/cadence
CDS_INST_DIR=$CDS_ROOT... and so on and so on

Now we add...
##############################
# For NCSU CDK
export UNAME=/bin/uname
export uname=$UNAME
export IC=$CDS_ROOT
export CDSSITE=$CDS_ROOT/local
##############################

Maybe you don't need both lower and upper UNAME, but someone else can work that out..

2) Now log out, and back in to pick up your new env. variables. Or paste the export statements into a terminal for the 1-shot use.. (Till you close the window)

3) Last, you need to run install.pl in cadence/local/bin/ (use perl install.pl). My answer to BOTH the questions was /home/cad/cadence. Next, tell the installer yes, it's ok to rename the old /dfII/local dir and create a link.


Now logout, and back in. The best test feature is in virtuoso schematic, the quick pick for new instances. Goto Add->Instance and NCSU has made a little popup that browses libraries much easier than the standard window. Use that as a test, plus all the "loading" text ICMS makes when it starts up to debug any bad setup.

Hope it helps!
 

lcg22

Member level 5
Joined
Sep 10, 2002
Messages
84
Helped
1
Reputation
2
Reaction score
1
Trophy points
1,288
Activity points
597
linux cadence .bashrc ld_library_path

Thank you very much for your explaination. But I am still not so sure about sth.

From cr@ack file: CDSDIR=/home/cad/cadence, this is my current setting and I can start c@dence tools without any problem. From your testing? CDSDIR=/home/cad/cadence/tools? Why did you use /home/cad/cadence/tools? for installing design kit?

Next question:
I can still run install.pl under bash shell? All I need is just add following enviornment variables in my .bashrc file?
##############################
# For NCSU CDK
export UNAME=/bin/uname
export uname=$UNAME
export IC=$CDS_ROOT so you mean IC_DIR=$CDS_ROOT
export CDSSITE=$CDS_ROOT/local
##############################
 

electronrancher

Advanced Member level 1
Joined
Mar 24, 2002
Messages
447
Helped
45
Reputation
90
Reaction score
11
Trophy points
1,298
Activity points
6,942
setup bash shell for cadence

yes, you have to run install.pl, which works fine under bash.

As for CDSDIR, I forget where I got my reference to call it /tools, but I think it's no big deal. This guy looks for /local dir to grab preferences. The NCSU kit puts a nice set of preferences in /cadence/local so I think it works fine for you.
 

lcg22

Member level 5
Joined
Sep 10, 2002
Messages
84
Helped
1
Reputation
2
Reaction score
1
Trophy points
1,288
Activity points
597
error <clsbd>

electronrancher said:
yes, you have to run install.pl, which works fine under bash.

As for CDSDIR, I forget where I got my reference to call it /tools, but I think it's no big deal. This guy looks for /local dir to grab preferences. The NCSU kit puts a nice set of preferences in /cadence/local so I think it works fine for you.
Thank you for your answer. So there are 3 steps only to install NCSU kit:

1. extract kit to installation directory.

2. set env variables.

3. run install.pl

that's all?
 

electronrancher

Advanced Member level 1
Joined
Mar 24, 2002
Messages
447
Helped
45
Reputation
90
Reaction score
11
Trophy points
1,298
Activity points
6,942
ncsu cdk install

yep that's all! did you try and have problems?
 

lcg22

Member level 5
Joined
Sep 10, 2002
Messages
84
Helped
1
Reputation
2
Reaction score
1
Trophy points
1,288
Activity points
597
fonts missing cdk

Hi, electronranche,

I have installed the design kit. It seems woking now. However I got a few problem with it.

1. the help button on the "creat library" popup window does not work! I checked the install instruction. It says:"Link in the help files. $IC_DIR/doc/openbook/config/hrfs/ncsuHelp.HRF -> $cdk_dir/doc/ncsuHelp.HRF". However, the directory-$IC_DIR/doc/openbook/config/hrfs does not exist.

2, the original libraries that come with the c@dence software disappear. Are the original libraries useful? Thanks.

3, what is the bash shell counterpart for this command:"setenv USE_NCSU_CDK" and its meaning? what is the function of this line:"setenv TERM $term"?

4. do you know the meaning of these lines and their bash shell counterparts?
# Path additions

alias prepend 'if (-d \!:2) if ("$\!:1" \!~ *"\!:2"*) setenv \!:1 "\!:2":${\!:1}'
alias extend 'if (-d \!:2) if ("$\!:1" \!~ *"\!:2"*) setenv \!:1 ${\!:1}:\!:2'

prepend PATH $LDV/tools/bin
prepend PATH $LDV/tools/dfII/bin
prepend PATH $IC/tools/bin
prepend PATH $IC/tools/dfII/bin
prepend PATH $IC/tools/concice/bin
prepend PATH $IC/tools/dracula/bin

extend MANPATH $LDV/share/man
extend MANPATH $IC/share/man
extend MANPATH $IC/tools/man

prepend LD_LIBRARY_PATH $LDV/tools/lib
prepend LD_LIBRARY_PATH $IC/tools/lib

# this next one sets a path to our wrapper script; the script
# removes this PATH component to unmask the real executable. ONLY USE
# THIS IF YOU"RE USING THE local/bin/dfiiwrapper.pl SCRIPT.

setenv PATH $CDS/bin:$PATH

#---- Start clsbd -----------------------------------------------------
# clsbd should always be running when we start cadence tools
# note that "bar" is a simple suid root program that starts clsbd (the
# theory is that if it's running as root, a userland process is less
# likely to take it down, and it won't be killed when the user logs out.
# we want this because clsbd needs to be running on all workstations
# that run cadence tools so it can respond to queries about locks. see
# chapter 11 of "Cadence Application Infrastructure User Guide" for more
# info on cls.)

if (( "`${uname} -sr`" == "SunOS 5.4") || ( "`${uname} -sr`" == "SunOS 5.5.1") || ( "`${uname} -sr`" == "SunOS 5.6")) then
$CDS_SITE/bin/bar > /dev/null
else
$IC/tools/bin/clsbd > /dev/null
endif

unset base_dir uname
 

lcg22

Member level 5
Joined
Sep 10, 2002
Messages
84
Helped
1
Reputation
2
Reaction score
1
Trophy points
1,288
Activity points
597
ncsu design kit under bash

anther question, what is the function of these two env variables?
export XKEYSYMDB=$CDS_ROOT/share/cdssetup/tdmX11/XKeysymDB
export XNLSPATH=$CDS_ROOT/share/cdssetup/tdmX11/nls
 

electronrancher

Advanced Member level 1
Joined
Mar 24, 2002
Messages
447
Helped
45
Reputation
90
Reaction score
11
Trophy points
1,298
Activity points
6,942
ncsu cdk installation

ok lemme try to work backwards.
XKEYSYMDB and XNLS... are setup stuff for xwin - fonts, natural language support (NLS), etc. you need them, but you can also use the standard stuff that's in /usr/X11.. I say leave it with cadence's files, you may have a conflict later if you use the generic ones.

I see no problem with throwing away the generic libraries that came with IC5 - I'd rather work off a real process. delete the symbolic link in /tools/dfII, and rename the /dfII/local.bak to /local if you want the cadence libs back.

That environment variable would be "export USE_NCSU_SDK" in bash. They say it's only needed when you link your install directory to /cadence/ic. so you can upgrade 446 to 50 by just changing a link. seems like a nice setup but i didn't want to reinstall or rerun install.pl and maybe screw something up so i left mine.

prepend path means the same as: PATH=/newdir:/newdir2/:$PATH. Look in the new dirs before you look in the old path. the other way (append) is : PATH=$PATH:/newdir:/newdir2. Looks in the old path before it looks in the new dirs. At 1800MHz I see no difference ;) Your milage may vary.

All that other stuff is PATH stuff, that should be done if you used the setup stuff i gave in that first "IC5 in RedHat 8" post. The MANPATH stuff shows man where to find the cadence specific manuals. I think I included it in mine, by doing:
export MANPATH=$MANPATH:$CDS_ROOT/share/man
export MANPATH=$MANPATH:$CDS_ROOT/tools/man
Since I am using CDS_ROOT as my main environment variable..

I highly doubt I will ever use "man icms". What does it give, the command line options for icms? Either there are a million options to set colors and crap manually, or it's useless.. Either way, I haven't explored. man is usually only good for command-line stuff like getting the options to tar and ls..

and term is terminal - probably in case it has to spawn another window to run some command line stuff (like the old borland compilers did in DOS)

try this one... term rm -R *. It should spawn another window that then deletes everything on your HD recursively. Just a joke..


And last... I never even tried the helps - You can get the real set of manuals from http://www.sli.strath.ac.uk/new-docs.htm. But probably not for long now that they will get 10,000 hits per day!!
 

lcg22

Member level 5
Joined
Sep 10, 2002
Messages
84
Helped
1
Reputation
2
Reaction score
1
Trophy points
1,288
Activity points
597
cadence installdir bashrc

How about the bash counterparts for the following scripts?
alias prepend 'if (-d \!:2) if ("$\!:1" \!~ *"\!:2"*) setenv \!:1 "\!:2":${\!:1}'
alias extend 'if (-d \!:2) if ("$\!:1" \!~ *"\!:2"*) setenv \!:1 ${\!:1}:\!:2'

prepend PATH $LDV/tools/bin
prepend PATH $LDV/tools/dfII/bin
prepend PATH $IC/tools/bin
prepend PATH $IC/tools/dfII/bin
prepend PATH $IC/tools/concice/bin
prepend PATH $IC/tools/dracula/bin

extend MANPATH $LDV/share/man
extend MANPATH $IC/share/man
extend MANPATH $IC/tools/man

prepend LD_LIBRARY_PATH $LDV/tools/lib
prepend LD_LIBRARY_PATH $IC/tools/lib
 

electronrancher

Advanced Member level 1
Joined
Mar 24, 2002
Messages
447
Helped
45
Reputation
90
Reaction score
11
Trophy points
1,298
Activity points
6,942
my cshrc ncsu

that's in my response too - search for "prepend".

Just path stuff, easily translated into bash..

Did you read my other post about bad models? ever got a simulation to run?
 

lcg22

Member level 5
Joined
Sep 10, 2002
Messages
84
Helped
1
Reputation
2
Reaction score
1
Trophy points
1,288
Activity points
597
how to install ncsu cdk library in virtuoso

PATH=/newdir:/newdir2/:$PATH
then for this line:
prepend PATH $LDV/tools/bin
which is newdir, which is newdir2?
what does this two lines do?
alias prepend 'if (-d \!:2) if ("$\!:1" \!~ *"\!:2"*) setenv \!:1 "\!:2":${\!:1}'
alias extend 'if (-d \!:2) if ("$\!:1" \!~ *"\!:2"*) setenv \!:1 ${\!:1}:\!:2'
 

electronrancher

Advanced Member level 1
Joined
Mar 24, 2002
Messages
447
Helped
45
Reputation
90
Reaction score
11
Trophy points
1,298
Activity points
6,942
cadence clsbd

prepends if already existing, setenv if nonexisting. you don't need to use this fancy setup, but read up on bash scripting if you really want to use stuff like this.
 

Status
Not open for further replies.
Toggle Sidebar

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Top