0% found this document useful (0 votes)
20 views

Pictorial Introduction To Using Cadence & Subversion - Circuit Design

Uploaded by

郁离子
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 views

Pictorial Introduction To Using Cadence & Subversion - Circuit Design

Uploaded by

郁离子
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

Pictorial introduction to using Cadence & Subversion

September 5, 2008 1 Poojan Wagh 2


I previously blogged about some scripts I use to help Cadence & Subversion be more compatible. I received some feedback
that the scripts were incomplete and came without any usage model. So, I went through an excercise to document the
scripts and to make sure they were complete.

Untar the CDSVN.tar file. It will create a directory called CDSVN


1 [wagh@porthos ~/example]$ tar xvf ~/cdsvn2.tar
2 CDSVN/
3 CDSVN/cdsLibMgr.il
4 CDSVN/bin/
5 CDSVN/bin/add
6 CDSVN/bin/unlock
7 CDSVN/bin/savesvn
8 CDSVN/bin/fixtilde
9 CDSVN/bin/unlockify
10 CDSVN/bin/lock
11 CDSVN/bin/lockify
12 CDSVN/bin/cdsignore
13 CDSVN/svnAddCV.il
14 CDSVN/svnAddCell.il
15 CDSVN/svnCopyCV.il
16 CDSVN/svnCopyCell.il
17 CDSVN/svnCopyTrigger.il
18 CDSVN/svnLockCV.il
19 CDSVN/svnLockCell.il
20 CDSVN/menus/
21 CDSVN/menus/schematic.menus
22 CDSVN/menus/layEdit.menus
23 CDSVN/README
24 CDSVN/COPYING
25 CDSVN/svn.cdsinit
26 CDSVN/cadence_ignores.txt
27 CDSVN/example.cdsinit

Set up Subversion with a new repository for Cadence


1 [wagh@porthos CDSVN]$ svnadmin create ~/examplerepo

Modify svn.env script to point to your subversion repository


Change the line:
1 setenv SR file:///home/user/examplerepo
to list your ~/examplerepo (for example)

Set up environment variables


1 cd CDSVN
2 [wagh@porthos CDSVN]$ source svn.env
3 What this script just did:
4 PATH = /usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/home/wagh/example/CDSVN/bin
5 If you haven't already, please edit this script to change the variable SR to point to a subversion repository
6 SR = file:///home/user/examplerepo
7 [wagh@porthos CDSVN]$ cd ..
8 [wagh@porthos ~/example]$

Import your work area (CDSVN) into the repos


1 [wagh@porthos CDSVN]$ svn import CDSVN $SR/trunk -m "Importing Cadence area into trunk"
2 Adding CDSVN/svnLockCell.il
3 Adding CDSVN/svnAddCell.il
4 Adding CDSVN/cadence_ignores.txt
5 Adding CDSVN/example.cdsinit
6 Adding CDSVN/menus
7 Adding CDSVN/menus/layEdit.menus
8 Adding CDSVN/menus/schematic.menus
9 Adding CDSVN/svnCopyTrigger.il
10 Adding CDSVN/svn.env
11 Adding CDSVN/README
12 Adding CDSVN/svnCopyCV.il
13 Adding CDSVN/svn.cdsinit
14 Adding CDSVN/svnCopyCell.il
15 Adding CDSVN/COPYING
16 Adding CDSVN/bin
17 Adding CDSVN/bin/lockify
18 Adding CDSVN/bin/unlockify
19 Adding CDSVN/bin/savesvn
20 Adding CDSVN/bin/add
21 Adding CDSVN/bin/fixtilde
22 Adding CDSVN/bin/lock
23 Adding CDSVN/bin/unlock
24 Adding CDSVN/bin/cdsignore
25 Adding CDSVN/cdsLibMgr.il
26 Adding CDSVN/svnLockCV.il
27 Adding CDSVN/svnAddCV.il
28
29 Committed revision 1.

Backup your CDSVN area and dump out a fresh copy


1 [wagh@porthos ~/example]$ mv CDSVN CDSVN.bak
2 [wagh@porthos ~/example]$ svn co $SR/trunk CDSVN
3 A CDSVN/svnLockCell.il
4 A CDSVN/svnAddCell.il
5 A CDSVN/cadence_ignores.txt
6 A CDSVN/menus
7 A CDSVN/menus/layEdit.menus
8 A CDSVN/menus/schematic.menus
9 A CDSVN/example.cdsinit
10 A CDSVN/svnCopyTrigger.il
11 A CDSVN/svnCopyCV.il
12 A CDSVN/svn.env
13 A CDSVN/README
14 A CDSVN/svn.cdsinit
15 A CDSVN/svnCopyCell.il
16 A CDSVN/bin
17 A CDSVN/bin/lockify
18 A CDSVN/bin/unlockify
19 A CDSVN/bin/savesvn
20 A CDSVN/bin/add
21 A CDSVN/bin/fixtilde
22 A CDSVN/bin/lock
23 A CDSVN/bin/unlock
24 A CDSVN/bin/cdsignore
25 A CDSVN/COPYING
26 A CDSVN/cdsLibMgr.il
27 A CDSVN/svnLockCV.il
28 A CDSVN/svnAddCV.il
29 Checked out revision 1.

cd CDSVN and created/edit a


.cdsinit to include the
line
load("svn.cdsinit")
1 [wagh@porthos ~/example]$ cd CDSVN/
2 [wagh@porthos CDSVN]$ svn mv example.cdsinit .cdsinit
3 A .cdsinit
4 D example.cdsinit

Start cadence & create a new library


1 [wagh@porthos CDSVN]$ icfb &
Select no tech library (unless you explicitly have one defined already)
Select file->new->library to create a
new library

Select no DM & No Tech Lib


Add the new library to subversion management
1 [wagh@porthos CDSVN]$ svn st
2 ? shared_design
3 ? cds.lib
4 D example.cdsinit
5 A + .cdsinit
6 [wagh@porthos CDSVN]$ add shared_design/
7 svn add -N shared_design/
8 A shared_design
9
10 property 'svn:ignore' set on 'shared_design'
11
12 A shared_design/cdsinfo.tag
13
14 A (bin) shared_design/prop.xx
15 [wagh@porthos CDSVN]$ svn st
16 ? cds.lib
17 D example.cdsinit
18 A shared_design
19 A shared_design/cdsinfo.tag
20 A shared_design/prop.xx
21 A + .cdsinit
22 [wagh@porthos CDSVN]$ svn add cds.lib
23 A cds.lib
24
25 [wagh@porthos CDSVN]$ svn ci -m "Got barebones libraries set up"
26 Adding .cdsinit
27 Adding cds.lib
28 Deleting example.cdsinit
29 Adding shared_design
30 Adding shared_design/cdsinfo.tag
31 Adding (bin) shared_design/prop.xx
32 Transmitting file data ...
33 Committed revision 2.

Start library manger & create a new cell

From CIW choose Tools>Library


Manager to start Library Manager
Choose file>New>Cell View

Fill in the dialog box to give the cell a


name
(Optional) Edit the cell view

Edit the cell view as you wish

Edit it some more (if you wish)


Back in library manager, add the cell view to subversion
Right click on the cell view in the
Library Manager

Just hit OK
Do a status on the command-line
1 [wagh@porthos CDSVN]$ svn st
2 ? libManager.log.1
3 ? libManager.log.1.cdslck
4 A shared_design/top_level
5 A shared_design/top_level/schematic
6 A shared_design/top_level/schematic/sch.cdb
7 A shared_design/top_level/schematic/master.tag
8 A shared_design/top_level/schematic/pc.db
9 A shared_design/top_level/schematic/prop.xx

Check in
1 [wagh@porthos CDSVN]$ svn ci -m "Adding shared_design"
2 Adding shared_design/top_level
3 Adding shared_design/top_level/schematic
4 Adding shared_design/top_level/schematic/master.tag
5 Adding shared_design/top_level/schematic/pc.db
6 Adding (bin) shared_design/top_level/schematic/prop.xx
7 Adding (bin) shared_design/top_level/schematic/sch.cdb
8 Transmitting file data ....
9 Committed revision 3.

Edit the cell some more

Edit the cell view some more (for


example, add another resistor)
Example when you're done
adding a resistor
Try to check & save

Check and save won't work; cell


view is locked
Lock the cell view

From schematic window, choose


Subversion->Lock View
Check & save again
This time it works: cell view is
locked for edit
Do another svn status
1 [wagh@porthos CDSVN]$ svn st
2 ? libManager.log.1
3 ? libManager.log.1.cdslck
4 M K shared_design/top_level/schematic/sch.cdb
5 K shared_design/top_level/schematic/master.tag
6 M K shared_design/top_level/schematic/pc.db
7 M K shared_design/top_level/schematic/prop.xx
We can see that the schematic has been modified

Check in again
1 [wagh@porthos CDSVN]$ svn ci -m "Added another resistor"
2 Sending shared_design/top_level/schematic/pc.db
3 Sending shared_design/top_level/schematic/prop.xx
4 Sending shared_design/top_level/schematic/sch.cdb
5 Transmitting file data ...
6 Committed revision 4.

You might also like