We design circuits for you, visit our main site


This blog will help you understand the utility and way to use Tanner Layout Edit, starting from creating a file to getting the code that could be used to run in Tanner’s T Spice software, *solution with images*

Along with basic errors that you might encounter and tips and tricks to increase your efficiency.

Remember: All things I mention are regarding tanner v16 but will work similarly for other versions as well, read comments for any updates or put your queries.
Don’t worry it is very easy.

Installing Tanner EDA


Let me get straight to the point I have a folder in the link below you just need to download the zip and extract in any of your folders and you can get started with tanner. Just make sure you extract the documents folder in your C drive’s document folder. The link will be added soon. 

Opening Layout editor


Step 1. Go to: Tanner\Tanner EDA\Tanner Tools v16.0\Ledit64

Step 2. Opening a new design. “Press Ctrl + n “or go to: File/New/Design

Step 3. You need to add TDB file in Database (refer to image below) location: Documents\Tanner EDA\Tanner Tools v16.0\Process\Generic_250nm\Generic_250nm_Tech\Generic_250nm_TechSetup.tdb

And

Technology reference as TDB and again the same file.


Step 4. Click OK.

Note: Keep in mind I am using Generic_250 nm technology you can use any you just will need to change a few things after you start drawing, don’t worry I will explain.

If it says that do you want to overwrite the file you can do 2 things

1: Click yes

2: Click No      LOL

If you click no you will have to recreate the design file and now in the database, you can click on three dots and then change the file name to your desire.

Anything will work. ## Read Design vs Cell ##

Step 4. You need to go to Cell/New Once you do that you will see a dialog box as shown below:

Name your cell as per your needs.

Click OK




Step 5. You will see that in your layer pallet there are no or very few layers




 
To correct that you need to import technology from setup/import technology …

Put technology TDB use the link: Documents\Tanner EDA\Tanner Tools v16.0\Process\Generic_250nm\Generic_250nm_Tech\TDB\Generic_250nm_TechSetup.tdb

And make sure your all other settings are as given in the figure below:




Click OK.

Before we proceed, I want to tell you the difference b/w

Design and Cell


Suppose you need to design a computer It contains various circuit boards/ ICs. You will create one design and then add cells as you need to add more ICs.

I recommend not to start every day with a new design but with new cells instead, it will reduce your time and increase your productivity.

Anyway, on to the topic.

Now you have Cell opened in front of you before you draw you have to get it working for your technology.

Go to Setup/Design…

Click technology mini tab.

Technology units: Other: Lambda

And Display Unit as Lambda too.

Once you click that you will get Technology to micron mapping,

Now if you are using 250nm Generic put 1/4 Micron (micron means micrometer)
If you are using 180nm put 9/50 Micron or if you are any other do the conversion as per requirement.






Now click on Grid mini tab,

You can leave it as it is, but as you might know me, I need productive settings so here you go:

Major display grid: 5 Lambda

Minor display grid: 1 Lambda

Cursor type: snapping

Mouse snap grid: .5 Lambda

This will help.



Click OK

It will prompt you that you have changed the units click yes, as you know that you have done it. Don’t you. 😉

Now get ready we are going to play with rules:

To do that we need to set rules first, SO here we go.
Click button with the wrench and a red tick on it on your top toolbar 
 you will get this dialog box:




Remove all the rules by clicking on each rule and then clicking on the red cross just above the box. You will be left with one rule named as DRC Standard Rule Set. Click OK

For this, I am going to use an example of PMOS



Note: there is nothing like that if you put something first it is above the other, it is dependent on the size if one is big than the other it is below the first. Thanks for reading the notes. 

Hope you are learning. If you are do leave a comment.

The white background in your cell is predefined as a P-type layer.

Step 1. We need to add N-well, make sure you can see the points on the cell as few things require a certain size.

Select N well from the Layer palette that we added before you can search above in the layer palette itself. Now to place it you need to select the type in which you want to place it Select the square button from the top toolbar on the right side of the pointer




Now place your cursor on the top left of a cell and drag till the bottom right. It doesn’t matter what size you draw.

Now to be on the safe side we need to run DRC test after every step,




The first button is DRC Run

(do this for the first time then you will know what errors occur and will be able to resolve when they are low, I’ve seen people dealing with 400+ errors at once and they understand none: lol)

All dealings with an error are in the last as I don’t want to break the flow. AGAIN.

Step 2. Adding P_IMPLANT or P_SELECT, add it in the right half only (See fig below)

RUN DRC TEST

Step 3. Add Active layer

Run DRC

Step 4. Add 2 metal, use metal1 recommended as rules are designed as per that.

Run DRC

Step 5. Add contact, this needs to be of precisely 1 Lambda length and width.

Add N_IMPLANT for the body terminal on the left side.

Add Active and Metal connected with another side also, contact.

Step 6. Add a poly layer in between and add metal and contact.

Run DRC. 



Now your device is complete.

What to do with rules?


Errors of each rule are shown in Verification Navigator you can expand and click on each error to get to know where they are.

1. Grid Error: IGNORE
2. Density Error:
     a. Right-click the error and select to jump to rule in DRC.
     b. Deselect the rule from the list on the left side clicks OK.

3. Distance error:
    a. Click on the rule and find where it is. If the rule is saying less than .7 Lambda or something like that increases the distance between those points.
    b. Run DRC again and the error should be gone in no time

4. If you find any other error do tell in comments, I will make sure to help ASAP.

Naming the connections: 


This is a good practice to do as you might forget the numberings.

Select P with a little square in its foot from the top toolbar 



The first one in this picture. Click on the connection (The black colored one or anywhere on the metal connecting it)

A dialog box will appear.



Name it appropriately and select the layer you are on, metal in most cases.

Click OK

Getting Code to Run In T-Spice

Step 1. Click on the Setup Extract button on the right side of the setup DRC.

Step 2. Remove all rules

Step 3. Add new rule by clicking the button right of the red cross.
Click 3 dots and go to address: Documents\Tanner EDA\Tanner Tools v16.0\Process\Generic_250nm\Generic_250nm_Tech\TDB\Rules
And select Generic_250nm.ext file.

Step 4. Click OK

Step 5. Check the overwrite and Open spice options.




Step 6. Click Ok Again

Now Run EXT, button Right of the Run DRC.

Now you have got your code.
Editing and Understanding the code

Your one line must look something like this:
M1 Vout A GND GND_ NMOS25 l=7.5e-007 w=2.375e-006 ad=3.71094e-012 as=5.64063e-012 pd=5.5e-006 ps=9.5e-006  $ (5.625 2.125 6.375 4.5)

if not then it must contain some numbers like:

M1 1 A GND 4 NMOS25 l=7.5e-007 w=2.375e-006 ad=3.71094e-012 as=5.64063e-012 pd=5.5e-006 ps=9.5e-006  $ (5.625 2.125 6.375 4.5)

We only require to check or change only 4 things in this line I.e:

M1 1 A GND 4 NMOS25

Edit: If you don't make body terminals you will see the numbers. Name them appropriately.

Edit 2: There is a difference between GND and GND_ the 2nd one is floating ground. Keep that in mind, of you are having problem with wave form try making all GND_ to GND.

There is an order in this which is Source Gate Drain Body.
Now you need to verify are they connected in the correct spot. If you see numbers it means naming of your connection was not perfect. Correct it or directly replace it here. 

To use the code you need to open T-Spice and paste the code there: 


Once you have named all the terminals you need to:

Step 1: Import library file from: Documents\Tanner EDA\Tanner Tools v16.0\Process\Generic_250nm\Generic_250nm_Tech\Generic_250nm.lib

Step 2add the voltage for VDD

using: VDD Vdd GND 5v

Step 3: Add DC or AC inputs for your inputs as desired. 

Step 4: print your outputs by using .print command

Run and clear the errors if any.

for help view this: Click here

Kudos, you have got your Tanner project completed.

Thanks for reading.




4 comments:

  1. If there is an error Contact Exact size = .25 lambda Go to jump in rule DRC and change rule distance from 0.25 to 1. It will resolve it.

    ReplyDelete