Top Banner
FULL CUSTOM IC DESIGN IMPLEMENTATION OF LOW POWER PRIORITY ENCODER BACHELOR OF TECHNOLOGY IN ELECTRONICS AND COMMUNICATION ENGINEERING Submitted By SRIKANTH KALEMLA 10881A0452 VENKATESH VEERABATTINI 10881A0459 VISHESH THAKUR SINGH 10881A0460 BHARGAV KATKAM 11885A0401 Department of Electronic and Communication Engineering VARDHAMAN COLLEGE OF ENGINEERING (AUTONOMOUS) (Approved by AICTE, Affiliated to JNTUH & Accredited by NBA) 2013 14
85

Full Custom IC Design Implementation of Priority Encoder

Jun 26, 2015

Download

Engineering

BhargavKatkam

It is a Report of Final year Project in VLSI of B.Tech ECE.
Project developed using cadence tools.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Full Custom IC Design Implementation of Priority Encoder

FULL CUSTOM IC DESIGN IMPLEMENTATION OF

LOW POWER PRIORITY ENCODER

BACHELOR OF TECHNOLOGY

IN

ELECTRONICS AND COMMUNICATION ENGINEERING

Submitted

By

SRIKANTH KALEMLA 10881A0452

VENKATESH VEERABATTINI 10881A0459

VISHESH THAKUR SINGH 10881A0460

BHARGAV KATKAM 11885A0401

Department of Electronic and Communication Engineering

VARDHAMAN COLLEGE OF ENGINEERING (AUTONOMOUS)

(Approved by AICTE, Affiliated to JNTUH & Accredited by NBA)

2013 – 14

Page 2: Full Custom IC Design Implementation of Priority Encoder

A

Project Report on

FULL CUSTOM IC DESIGN IMPLEMENTATION OF

LOW POWER PRIORITY ENCODER

Submitted in the Partial Fulfillment of the

Requirements

for the Award of the Degree of

BACHELOR OF TECHNOLOGY

IN

ELECTRONICS AND COMMUNICATION ENGINEERING

Submitted

By

SRIKANTH KALEMLA 10881A0452

VENKATESH VEERABATTINI 10881A0459

VISHESH THAKUR SINGH 10881A0460

BHARGAV KATKAM 11885A0401

Under the esteemed guidance of

Mr. S. RAJENDAR

Associate Professor

Department of ECE

Department of Electronics and Communication Engineering

VARDHAMAN COLLEGE OF ENGINEERING (AUTONOMOUS)

(Approved by AICTE, Affiliated to JNTUH & Accredited by NBA)

2013- 14

Page 3: Full Custom IC Design Implementation of Priority Encoder

VARDHAMAN COLLEGE OF ENGINEERING (AUTONOMOUS)

Estd.1999 Shamshabad, Hyderabad - 501218

Kacharam (V), Shamshabad (M), Ranga Reddy (Dist.) – 501 218, Hyderabad, A.P. Ph: 08413-253335, 253201, Fax: 08413-253482, www.vardhaman.org

Department of Electronics and Communication Engineering

CERTIFICATE

This is to certify that the project work entitled “Full custom IC Design

Implementation of Low Power Priority Encoder” is done by Mr. Srikanth Kalemla

(10881A0452), Mr. Venkatesh Veerabattini (10881A0459), Mr. Vishesh Thakur

Singh (10881A0460), Mr. Bhargav Katkam (11885A0401), students of Department of

Electronics and Communication Engineering, is a record of bonafide work done by

them. This project is done as a partial fulfillment of obtaining Bachelor of

Technology degree to be awarded by Jawaharlal Nehru Technological University,

Hyderabad.

The results of investigations enclosed in this report have been verified and

found satisfactory.

External Examiner

Name & Signature of the Supervisor

Mr. S. Rajendar

Associate Professor

Name & Signature of the HOD

Dr. J. V. R. Ravindra

Head, ECE

Page 4: Full Custom IC Design Implementation of Priority Encoder

iii

ACKNOWLEDGEMENTS

The satisfaction that accompanies the successful completion of the task would

be put incomplete without the mention of the people who made it possible, whose

constant guidance and encouragement crown all the efforts with success.

We express our heartfelt thanks to Mr. S. Rajendar, Associate Professor,

technical seminar supervisor, for his suggestions in selecting and carrying out the in-

depth study of the topic. His valuable guidance, encouragement and critical reviews

really helped to shape this report to perfection.

We wish to express our deep sense of gratitude to Dr. J. V. R. Ravindra,

Head of the Department for his able guidance and useful suggestions, which helped us

in completing the project on time.

We also owe our special thanks to our Director Prof. L. V. N. Prasad for his

intense support, encouragement and for having provided all the facilities and support.

Finally thanks to all our family members and friends for their continuous

support and enthusiastic help.

Srikanth Kalemla

Venkatesh Veerabattini

Vishesh Thakur Singh

Bhargav Katkam

Page 5: Full Custom IC Design Implementation of Priority Encoder

iv

ABSTRACT

Today digital circuits play a prominent role in most of the communication

applications. The enhancement on a simple encoder circuit, in terms of handling all

possible input combinations has led to the development of special circuits known as

Priority Encoders. These circuits facilitate in compressing several inputs into

numerous small outputs. The quality feature of these encoders is encoding the inputs

just to make sure that only highest order lines are encoded. The result or output of the

priority encoder should be a binary representation of ordinal numbers articulated in

BCD format. In addition, these also manage interrupt requests through high priority

request. Whenever there is more than one active input at same time, then highest

priority input will be given more preference. One can find priority encoders in

standard or normal IC form such as TTL 74LS147 or TTL 74LS148. Basically, the

former encodes 9 datelines to 4 lines as in (8-4-2-1) BCD. And the latter expresses 8

datelines to 3 lines as in 4-2-1 (octal) binary. In order to provide octal expansion with

no requirement of external circuitry, one needs Cascading Circuitry. Data inputs and

data outputs are active even at low levels. Priority encoders find wide range of

applications as in keyboard encoding, range selection, bit level encoding, code

converters and generators.

Page 6: Full Custom IC Design Implementation of Priority Encoder

v

CONTENTS

Acknowledgements iii

List of figures viii

List of tables xi

List of abbreiviations xii

1 INTRODUCTION TO PRIORITY ENCODER 1-8

1.1 What are Digital Encoders 1

1.2 Introduction to Priority Encoder 2

1.3 Primer to Digital IC Design 4

1.4 Applications of Encoders 5

1.4.1 Keyboard Encoder 5

1.4.2 Positional Encoder 6

1.4.3 Interrupt Requests 6

1.5 Organization of the report 8

2 IMPORTANCE OF VLSI 9-15

2.1 History of semiconductor 9

2.2 Development in semiconductor industry 10

2.3 Introduction to VLSI 10

2.4 The VLSI design process 11

2.4.1 A Typical Digital Design Flow is as follows 11

2.4.2 A Typical Analog Design Flow is as follows 12

2.5 Classification of VLSI design 12

2.5.1 Full Custom IC Designs 12

2.5.2 Semi-custom IC Designs 13

2.6 Some of application of VLSI 15

2.6.1 Industrial Applications 15

2.6.2 Communication Applications 15

2.6.3 Science Applications 15

3 FULL CUSTOM DESIGN FLOW 16-26

3.1 Scope and Purpose of Work 17

3.2 Design Flow 17

3.2.1 Design Specifications 19

3.2.2 Schematic Capture 19

3.2.3 Symbol Creation 20

Page 7: Full Custom IC Design Implementation of Priority Encoder

vi

3.2.4 Simulation 20

3.2.5 Layout 21

3.2.6 Design Rule Check 22

3.2.7 LVS-Layout v/s Schematic 23

3.2.8 Circuit Extraction 24

3.2.9 Post-layout simulation 25

3.2.10 Fabrication 25

4 IMPLEMENTATION OF DESIGN 27-56

4.1 Priority encoder functioning 27

4.2 Logic gates 28

4.2.1 AND gate 28

4.2.2 OR gate 29

4.2.3 NOT gate 29

4.2.4 NAND gate 29

4.2.5 NOR gate 29

4.2.6 EXOR gate 30

4.2.7 EXNOR gate 30

4.3 Importance of layout 30

4.3.1 Automated layout 31

4.3.2 Custom layout 31

4.4 Inputs from the designer 31

4.5 From Foundry 32

4.5.1 DRC 33

4.5.2 LVS 33

4.5.3 ERC 33

4.6 Layers Classification 33

4.7 Analog Layout 34

4.7.1 Importance of Analog Layout: 34

4.8 Analog Vs Digital 34

4.9 Some of Important Analog Layout Guidelines 35

4.10 AND 2 input 39

4.11 Not Gate 40

4.12 NOR 2 input 41

4.13 NAND 2 input 42

4.14 AND 3 input 43

Page 8: Full Custom IC Design Implementation of Priority Encoder

vii

4.15 AND 4 input 44

4.16 NOR 4 input 45

4.17 AND 5 input 46

4.18 NOR 5 input 47

4.19 NAND 9 input 48

4.20 8x3 Priority Encoder 49

4.21 10x4 Priority Encoder 52

5 CONCLUSIONS 56-58

REFERENCES 58

APPENDIX CADENCE OVERVIEW 59

Introduction 59

Schematics L 59

ADE L (Analog Design Environment) 59

Layout XL 59

Design of Schematic 60

Symbol Generation 63

Schematic Simulation 64

Calculation of Propagation Delay 65

Calculation of Power Dissipation 67

Design of Layout 67

GDS File 71

Page 9: Full Custom IC Design Implementation of Priority Encoder

viii

LIST OF FIGURES

1.1 BCD Priority Encoder 4

1.2 Positional Encoders used as Priority Encoder Navigation 6

2.1 Full Custom IC Design 13

2.2 General architecture of Xilinx FPGAs 13

2.3 Gate Array based Design 14

2.4 Standard cell IC design 14

3.1 Typical Full Custom IC Design Flow 18

3.2 Schematic design of 4-input NOR gate. 20

3.3 Symbol view of 4-input NOR gate 20

3.4 Layout of AND gate 21

3.5 The three basic DRC checks 22

3.6 LVS Extracted netlist 23

3.7 Typical Layout versus Schematic of an Inverter 24

3.8 Parasitic Extraction 25

4.1 And gate symbol 28

4.2 OR gate symbol 29

4.3 NOT gate symbol 29

4.4 NAND gate symbol 29

4.5 NOR gate symbol 30

4.6 EXOR gate symbol 30

4.7 EXNOR gate symbol 30

4.8 2 input AND Schematic and layout 39

4.9 2 input AND symbol and test circuit 39

4.10 two input waveform 39

4.11 NOT Schematic and Layout 40

4.12 NOT Symbol and Test circuit 40

4.13 NOT Simulation waveforms 40

4.14 2 input NOR Schematic and Layout 41

4.15 2input NOR Symbol and Test circuit 41

4.16 2input NOR Simulation waveforms 41

4.17 2input NAND Schematic and Layout 42

4.18 2input NAND Symbol and Test circuit 42

4.19 2input NAND Simulation waveforms 42

Page 10: Full Custom IC Design Implementation of Priority Encoder

ix

4.20 3input AND Schematic and Layout 43

4.21 3input AND Symbol and Test circuit 43

4.22 3input AND Simulation waveforms 43

4.23 4input AND Schematic and Layout 44

4.24 4input AND Symbol and Test circuit 44

4.25 4input AND Simulation waveforms 44

4.26 4input NOR Schematic and Layout 45

4.27 4input NOR Symbol and Test circuit 45

4.28 4input NOR Simulation waveforms 45

4.29 5input AND Schematic and Layout 46

4.30 5input AND Symbol and Test circuit 46

4.31 5input AND Simulation waveforms 46

4.32 5input NOR Schematic and Layout 47

4.33 5input nor Symbol and Test circuit 47

4.34 5input NOR Simulation waveforms 47

4.35 9input NAND Schematic and Layout 48

4.36 9input NAND Symbol and Test circuit 48

4.37 9input NAND Simulation waveforms 48

4.38 8x3 Priority Encoder Schematic and Layout 49

4.39 8x3 Priority Encoder Symbol and Test circuit 49

4.40 Priority Encoder Simulation waveforms without parasitics 50

4.41 8x3 Priority Encoder Simulation waveforms with parasitics 50

4.42 8x3 Priority Encoder with no DRC errors 51

4.43 8x3 Priority Encoder with no ERC errors 51

4.44 8x3 Priority Encoder with no LVS errors 51

4.45 8x3 Priority Encoder Layout with RC Extraction 52

4.46 10x4 Priority Encoder Symbol and Test circuit 52

4.47 10x4 Priority Encoder Schematic and Layout 53

4.48 10x4 Priority Encoder Simulation waveforms without parsitics 53

4.49 10x4 Priority Encoder Simulation waveforms with parasitics 54

4.50 10x4 Priority Encoder with no DRC errors 54

4.51 10x4 Priority Encoder with no ERC errors 54

4.52 10x4 Priority Encoder with no LVS errors 55

4.53 10x4 Priority Encoder Layout with RC Extraction 55

A.1 Terminal window 60

Page 11: Full Custom IC Design Implementation of Priority Encoder

x

A.2 Virtuoso 60

A.3 New Library 61

A.4 Technology Library 61

A.5 New File 61

A.6 Instance 61

A.7 Instance Specifications 62

A.8 Schematic circuit 62

A.9 Symbol Generation 63

A.10 Symbol Specification 63

A.11 Symbol 63

A.12 ADE Window 64

A.13 Choosing Analyses 64

A.14 Save Options 65

A.15 Waveforms 65

A.16 Calculation of Propagation Delay 66

A.17 Calculation of Power Dissipation 66

A.18 New file for Layout 67

A.19 Progress on DRC 67

A.20 Assura DRC 68

A.21Errors of DRC 68

A.22 Assura LVS 69

A.23 Errors for LVS test 69

A.24 Extraction of RCX 70

A.25 RCX Generation 70

A.26 Open File for av_extracted 70

A.27 RCX 71

A.28 Stream Out 71

A.29 Stream Specification 72

A.30 Log File 72

Page 12: Full Custom IC Design Implementation of Priority Encoder

xi

LIST OF TABLES

1.1 Function Table of Priority Encoder 2

1.2 Interrupt requests to a microprocessor 7

5.1 And gate truth table 28

5.2 And gate truth table 29

5.3 NOT gate truth table 29

5.4 NAND gate truth table 29

5.5 NOR gate truth table 30

5.6 EXOR gate truth table 30

5.7 EXNOR gate truth table 30

Page 13: Full Custom IC Design Implementation of Priority Encoder

xii

LIST OF ABBREVIATIONS

ADE Analog Design Environment

ASG Automatic Symbol Generator

ASIC Application Specific Integrated Circuit

CAD Computer-Aided Design

CIW Command Interpreter Window

CWD Current Working Directory

DRC Design Rule Check

EDA Electronic Design Automation

EM Electron Migration

ERC Electrical Rule Check

GDS Graphic Database System

GUI Graphical User Interface

IC Integrated Circuit

LEF Library Exchange Format

LVS Layout Versus Schematic

PVT Process Voltage Temperature

RCX Resistor Capacitor Extraction

RTL Register Transfer Level

SDF Standard Delay Format

SoC System on Chip

ViVA Virtuoso Visualization and Analysis

VHSIC Very High Speed Integrated Circuit

VLSI Very Large Scale Integration

Page 14: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 1

CHAPTER 1

INTRODUCTION TO PRIORITY ENCODER

Today digital circuits play a prominent role in most of the communication

applications. In this project report an effective approach to analysis and design of

priority encoder explored and implemented using Cadence tools.

The enhancement on a simple encoder circuit, in terms of handling all possible

input combinations has led to the development of special circuits known as Priority

Encoders. These circuits facilitate in compressing several inputs into numerous small

outputs. The quality feature of these encoders is encoding the inputs just to make sure

that only highest order lines are encoded. The result or output of the priority encoder

should be a binary representation of ordinal numbers articulated in BCD format. In

addition, these also manage interrupt requests through high priority request.

Whenever there is more than one active input at same time, then highest priority input

will be given more preference. One can find priority encoders in standard or normal

IC form such as TTL 74LS147 or TTL 74LS148. Basically, the former encodes 9

datelines to 4 lines as in (8-4-2-1) BCD. And the latter expresses 8 datelines to 3 lines

as in 4-2-1 (octal) binary. In order to provide octal expansion with no requirement of

external circuitry, one needs Cascading Circuitry. Data inputs and data outputs are

active even at low levels. Priority encoders find wide range of applications as in

keyboard encoding, range selection, bit level encoding, code converters and

generators.

1.1 What are Digital Encoders

Unlike a multiplexer that selects one individual data input line and then sends

that data to a single output line or switch, a Digital Encoder more commonly called

a Binary Encoder takes all its data inputs one at a time and then converts them into a

single encoded output. So we can say that a binary encoder, is a multi-input

combinational logic circuit that converts the logic level “1″ data at its inputs into an

equivalent binary code at its output.

Generally, digital encoders produce outputs of 2-bit, 3-bit or 4-bit codes

depending upon the number of data input lines. An “n-bit” binary encoder has 2n input

lines and n-bit output lines with common types that include 4-to-2, 8-to-3 and 16-to-4

line configurations. The output lines of a digital encoder generate the binary

equivalent of the input line whose value is equal to “1″ and are available to encode

Page 15: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 2

either a decimal or hexadecimal input pattern to typically a binary or “B.C.D” (binary

coded decimal) output code.

One of the main disadvantages of standard digital encoders is that they can

generate the wrong output code when there is more than one input present at logic

level “1″. For example, if we make inputs D1 and D2 HIGH at logic “1″ both at the

same time, the resulting output is neither at “01″ or at “10″ but will be at “11″ which

is an output binary number that is different to the actual input present. Also, an output

code of all logic “0″s can be generated when all of its inputs are at “0″ OR when input

D0 is equal to one.

One simple way to overcome this problem is to “Prioritise” the level of each

input pin and if there was more than one input at logic level “1″ the actual output code

would only correspond to the input with the highest designated priority. Then this

type of digital encoder is known commonly as a Priority Encoder or P-encoder for

short.

1.2 Introduction to Priority Encoder

A priority encoder is a circuit or algorithm that compresses multiple binary

inputs into a smaller number of outputs. The output of a priority encoder is the binary

representation of the original number starting from zero of the most significant input

bit. They are often used to control interrupt requests by acting on the highest priority

request.

Priority encoders can be easily connected in arrays to make larger encoders,

such as one 16-to-4 encoder made from six 4-to-2 priority encoders - four 4-to-2

encoders having the signal source connected to their inputs, and the two remaining

encoders take the output of the first four as input. The priority encoder is an

improvement on a simple encoder circuit, in terms of handling all possible

input configurations. The simplified function table of the four input level priority

encoder circuit is indicated in table below.

Table 1.1 Function Table of Priority Encoder

If two or more inputs are given at the same time, the input having the highest

Page 16: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 3

priority will take precedence. An example of a single bit 4 to 2 encoder is shown,

where highest-priority inputs are to the left and "x" indicates an irrelevant value - i.e.

any input value there yields the same output since it is superseded by higher-priority

input. The output V indicates if the input is valid.

The Priority Encoder solves the problems mentioned above by allocating a

priority level to each input. The priority encoders output corresponds to the currently

active input which has the highest priority. So when an input with a higher priority is

present, all other inputs with a lower priority will be ignored. The priority encoder

comes in many different forms with an example of an 8-input priority encoder along

with its truth table shown below.

Priority encoders are available in standard IC form and the TTL 74LS148 is an

8-to-3 bit priority encoder which has eight active LOW (logic “0″) inputs and

provides a 3-bit code of the highest ranked input at its output. Priority encoders output

the highest order input first for example, if input lines “D2“, “D3” and “D5” are

applied simultaneously the output code would be for input “D5” (“101″) as this has

the highest order out of the 3 inputs. Once input “D5” had been removed the next

highest output code would be for input “D3” (“011″), and so on.

As indicated in Table 1.1along with two functional output levels one more

output level namely valid bit indicator indicates the correct input levels. If all the

input levels are equal to zero then the valid bit indicator indicates its output as low

output and otherwise it indicates the output level at high state. Because of the

simplified form the function table it is not indicated for all the possible input

combinations and only indicates the few input combinations and X in the table

indicates whether the input level is either active high or active low. Based on the table

the greater priority will be given on input level D3 then followed by other input levels

D2, D1 and D0 respectively. When the input level D3 is active high then there is no need

for verify the other input levels likewise if D3 is in active low then D2 is active high

then C will be higher priority level compared to other input levels. The karnaugh map

is providing a simple procedure for simplifying the given Boolean function. This

method provides a pictorial form of a function table. A karnaugh map is a diagram

and it is made up of squares with each square represent a min term of the function that

is to be simplified.

Figure 1.1 shows an example of the operation of a BCD priority encoder.

In Figure 1.1a, only input D2 is active, so the output code generated is 0010,

the binary equivalent of 2. In Figure 1.1b, input D2 remains active, but now D7 is also

Page 17: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 4

active. Since D7 has the higher priority, the output code is now 0111, the binary

equivalent of 7. InFigure 1.1c, input D9 is HIGH, in addition to the other two inputs.

Since D9 has the highest priority, the output is 1001. There is no input for D0 since

the output 0000 is the default value when no inputs are active.

D1

D2

D3

D4

D5

D6

D7

D8

D9

Q0

Q1

Q2

Q3

D1

D2

D3

D4

D5

D6

D7

D8

D9

Q0

Q1

Q2

Q3

D1

D2

D3

D4

D5

D6

D7

D8

D9

Q0

Q1

Q2

Q3

0

0

0

0

0

0

0

0

1

0

1

0

0

0

0

1

0

0

0

1

0

0

0

0

1

0

1

0

0

1

0

0

1

1

1

1

0

0

1

A.priority:2 B.priority:7 C.priority:9

Figure 1.1 BCD Priority Encoder

1.3 Primer to Digital IC Design

IC design can be divided into the broad categories of digital and analog IC

design. Digital IC design is to produce components such as microprocessors, FPGAs,

memories (RAM, ROM, and flash) and digital ASICs. Digital design focuses on

logical correctness, maximizing circuit density, and placing circuits so that clock and

timing signals are routed efficiently. Analog IC design also has specializations in

power IC design and RF IC design. Analog IC design is used in the design of op-

amps, linear regulators, phase locked loops, oscillators and active filters. Analog

design is more concerned with the physics of the semiconductor devices such as gain,

matching, power dissipation, and resistance. Fidelity of analog signal amplification

and filtering is usually critical and as a result, analog ICs use larger area active

devices than digital designs and are usually less dense in circuitry.

Full-custom design is a methodology for designing integrated circuits by

specifying the layout of each individual transistor and the interconnections between

them.

Alternatives to full-custom design include various forms of semi-custom

design, such as the repetition of small transistor sub circuits; one such methodology is

the use of standard cell libraries (standard cell libraries are themselves designed using

Page 18: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 5

full-custom design techniques). In addition it will make extensive use of CAD tools

for IC design, simulation. Specific techniques for designing high-speed, low-power,

and easily-testable circuits will also be covered. Full-custom design potentially

maximizes the performance of the chip, and minimizes its area, but is extremely

labour-intensive to implement. Full-custom design is limited to ICs hat are to be

fabricated in extremely high volumes, notably certain microprocessors and a small

number of ASICs.

Semiconductor technology continues to attract enormous investment and is

available to anyone with the know-how to use it. It is used not only to design complex

high density circuits but also chemical and medical sensors, ASICS (application

specific integrated circuits) of many types.

IC design requires an understanding of the fabrication process, digital

electronics and makes use of a range of important CAD tools as listed below. The

objective of this course is to illustrate the complete design cycle and produce a fully

verified simple design ready for fabrication. This will provide literacy in one of the

dominant technologies of the time. This introduction will not make you into a

designer but will give you a literacy in the area of integrated circuit design which is

lacking in most physicists.

The expertise in IC design is concentrated in volume silicon devices and low

volume, specialist ASICs are relatively neglected. This is partly for financial reasons

and partly because the idea for a new ASIC is in the head of the inventor only.

The skills needed include an understanding of the basics of:

a) electronics including digital electronics

b) software design tools

c) Silicon fabrication technology. This may not be necessary if there are

no non-standard fabrication steps.

Beyond this the main requirement is an ability to solve problems which will

inevitably arise. New programmable chips are now available which enable immediate

implementation of a circuit designed on computer. These devices may be

reprogrammed and offer a very attractive option where hand crafted design is not

necessary and only small number units are needed.

1.4 Applications of Encoders

Digital Encoders find wide range of applications as shown below:

1.4.1 Keyboard Encoder

Page 19: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 6

Priority encoders can be used to reduce the number of wires needed in a

particular circuits or application that has multiple inputs. For example, assume that a

microcomputer needs to read the 104 keys of a standard QWERTY keyboard where

only one key would be pressed either “HIGH” or “LOW” at any one time.

One way would be to connect all 104 wires from the individual keys on the

keyboard directly to the computers input but this would be impractical for a small

home PC. Another alternative and better way would be to interface the keyboard to

the PC using a priority encoder.

The 104 individual buttons or keys could be encoded into a standard ASCII

code of only 7-bits (0 to 127 decimal) to represent each key or character of the

keyboard and then inputted as a much smaller 7-bit B.C.D code directly to the

computer. Keypad encoders such as the 74C923 20-key encoder are available to do

just that.

1.4.2 Positional Encoder

Another more common application is in magnetic positional control as used on

ships navigation or for robotic arm positioning etc. Here for example, the angular or

rotary position of a compass is converted into a digital code by a 74LS148 8-to-3 line

priority encoder and inputted to the systems computer to provide navigational data

and an example of a simple 8 position to 3-bit output compass encoder is shown

below. Magnets and reed switches could be used at each compass point to indicate the

needles angular position.

Figure 1.2 Positional Encoders used as Priority Encoder Navigation

1.4.3 Interrupt Requests

Other applications especially for Priority Encoders may include detecting

interrupts in microprocessor applications. As illustrated in table 1.2 below here the

microprocessor uses interrupts to allow peripheral devices such as the disk drive,

scanner, mouse, or printer etc., to communicate with it, but the microprocessor can

Page 20: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 7

only “talk” to one peripheral device at a time so needs some way of knowing when a

particular peripheral device wants to communicate with it.

The processor does this by using “Interrupt Requests” or “IRQ” signals to

assign priority to all the peripheral devices to ensure that the most important

peripheral device is serviced first. The order of importance of the devices will depend

upon their connection to the priority encoder.

Table 1.2 Interrupt requests to a microprocessor

Because implementing such a system using priority encoders such as the

standard 74LS148 priority encoder IC involves additional logic circuits, purpose built

integrated circuits such as the 8259 Programmable Priority Interrupt Controller is

available.

Then to summarise, the Digital Encoder is a combinational circuit that

generates a specific code at its outputs such as binary or BCD in response to one or

more active inputs. There are two main types of digital encoder:-The Binary

Encoder and the Priority Encoder.

We have seen that the Binary Encoder converts one of 2n inputs into an n-

bit output. Then a binary encoder has fewer output bits than the input code. Binary

encoders are useful for compressing data and can be constructed from

simple AND or OR gates. One of the main disadvantages of a standard binary encoder

is that it would produce an error at its outputs if more than one input were active at the

same time. To overcome these problem priority encoders were developed.

The Priority Encoder is another type of combinational circuit similar to a

Page 21: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 8

binary encoder, except that it generates an output code based on the highest prioritised

input. Priority encoders are used extensively in digital and computer systems as

microprocessor interrupt controllers where they detect the highest priority input.

1.5 Organization of the report

This report starts with an overview of the priority encoder giving importance

to the full custom design. The report also include the implementation of the design

done by using Cadence tools that accurately generated that results and its easily

modifiable graphical representation of the product proved advantageous. We analyse

the impact of area, power consumption and delay, and introduce techniques to cope

with power consumption. These variations fundamentally limit the performance that

can be achieved using a conventional design methodology. The report is organized as

follows:

Chapter 1: Introduction To Priority Encoder - This chapter briefly explains the

overview of the report.

Chapter 2: Importance of VLSI - This chapter describes the growing evolution of

VLSI in today’s world and also lists some of its applications in various fields.

Chapter 3: Full Custom Design Flow - This chapter presents the detailed design flow

of full custom IC design.

Chapter 4: Implementation of Design – This chapter designates the implementation of

priority encoder (74LS147 & 74LS148) carried out using Cadence EDA tools.

Chapter 5: Conclusions - This chapter summarizes the major accomplishments of this

report.

Page 22: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 9

CHAPTER 2

IMPORTANCE OF VLSI

2.1 History of semiconductor

Before 1960, most electronic circuits depended upon vacuum tubes to perform

the critical tasks of amplification and rectification. An ordinary mass-produced AM

radio required five tubes, while a colour television needed no fewer than twenty.

Vacuum tubes were large, fragile and expensive. They dissipated a lot of heat and

were not very reliable. So long as Electronics depended upon them, it was nearly

impossible to construct systems requiring thousands or millions of active devices.

The appearance of the bipolar junction transistor in 1947 marked the

beginning of the solid state revolution. These new devices were cheap, small, rugged

and reliable. Solid state circuitry made possible the development compact disc

players, pocket transistor radios and personal computers.

“A solid state device consists of a crystal with regions of impurities

incorporated in to its surface. These impurities modify the electrical properties of the

crystal, allowing it to amplify or modulate electrical signals.”

So as the technology is growing up newer type of transistors came into

existence .BJT was popular for many years but due to its disadvantages such as power

dissipation, speed of operation it has becoming less popular. Metal Oxide Silicon

Transistor (MOST) which was invented earlier than BJT'S but was not produced due

to lack of production techniques at that time. Researches are carried on to reduce

larger power consumption, size and speed of MOST, evolving simple techniques

for MOS Integrated circuits production.

The first practical Integrated circuit appeared in 1960. These consisted of a

few dozen bipolar transistors and diffused resistors connected to form simple logic

gates. By modern standards, these early integrated circuits were terribly slow and

inefficient. Refinements were soon made, and the first analog integrated circuits

appeared, these consisted of matched transistor arrays, operational amplifiers and

voltage references.

Integrated bipolar logic was fast but power-hungry. MOS integrated circuits

held out the promise of a lower-power alternative, but the metal-gate MOS processes

of the 1960s suffered from unpredictable threshold voltage shifts. This problem was

eventually conquered through the development of polysilicon-gate MOS processes.

Page 23: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 10

Now in the present technology the transistor that is leading the technology is

the CMOS simply called as Complementary Metal oxide Semiconductor.

2.2 Development in semiconductor industry

The first semiconductor chips held two transistors each. Subsequent advances

added more and more transistors, and, as a consequence, more individual functions or

systems were integrated over time. The first integrated circuits held only a few

devices, perhaps as many as ten Diodes, Transistors, Resistors and Capacitors making

it possible to fabricate one or more logic gates on a single device. Now known

retrospectively as Small Scale Integration (SSI), improvements in technique led to

devices with hundreds of logic gates, known as Medium Scale Integration (MSI).

Further improvements led to Large Scale Integration (LSI), i.e. systems with at least a

thousand logic gates. Current technology has moved far past this mark and today's

microprocessors have many millions of gates and billions of individual transistors.

2.3 Introduction to VLSI

VLSI stands for "Very Large Scale Integration". This is the field which

involves packing more and more logic devices into smaller and smaller areas. Thanks

to VLSI, circuits that would have taken board full of space can now be put into a

small space few millimetres across! This has opened up a big opportunity to do things

that were not possible before. VLSI circuits are everywhere ... your computer, your

car, your brand new state-of-the-art digital camera, the cell-phones, and what have

you. All this involves a lot of expertise on many fronts within the same field, which

we will look at in later sections.

VLSI has been around for a long time, there is nothing new about it but as a

side effect of advances in the world of computers, there has been a dramatic

proliferation of tools that can be used to design VLSI circuits. Alongside, obeying

Moore's law, the capability of an IC has increased exponentially over the years, in

terms of computation power, utilisation of available area, yield. The combined effect

of these two advances is that people can now put diverse functionality into the IC's,

opening up new frontiers. Examples are embedded systems, where intelligent devices

are put inside everyday objects, and ubiquitous computing where small computing

devices proliferate to such an extent that even the shoes you wear may actually do

something useful like monitoring your heartbeats! These two fields are kind a related

and getting into their description can easily lead to another article.

Digital VLSI circuits are predominantly CMOS based. The way normal blocks

Page 24: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 11

like latches and gates are implemented is different from what students have seen so

far, but the behaviour remains the same. All the miniaturisation involves new things

to consider. A lot of thought has to go into actual implementations as well as design.

Let us look at some of the factors involved.

1. Circuit Delays. Large complicated circuits running at very high frequencies have

one big problem to tackle - the problem of delays in propagation of signals through

gates and wires ... even for areas a few micrometres across! The operation speed is so

large that as the delays add up, they can actually become comparable to the clock

speeds.

2. Power. Another effect of high operation frequencies is increased consumption of

power. This has two-fold effect - devices consume batteries faster, and heat

dissipation increases. Coupled with the fact that surface areas have decreased, heat

poses a major threat to the stability of the circuit itself.

3. Layout. Laying out the circuit components is task common to all branches of

electronics. What’s so special in our case is that there are many possible ways to do

this; there can be multiple layers of different materials on the same silicon, there can

be different arrangements of the smaller parts for the same component and so on.

The power dissipation and speed in a circuit present a trade-off; if we try to optimise

on one, the other is affected. The choice between the two is determined by the way we

chose the layout the circuit components. Layout can also affect the fabrication of

VLSI chips, making it either easy or difficult to implement the components on the

silicon.

2.4 The VLSI design process

2.4.1 A Typical Digital Design Flow is as follows

Specification Architecture RTL Coding RTL Verification Synthesis Backend

Tape Out to Foundry to get end product. A wafer with repeated number of identical

IC’s.

All modern digital designs start with a designer writing a hardware

description of the IC (using HDL or Hardware Description Language) in

Verilog/VHDL. A Verilog or VHDL program essentially describes the hardware

(logic gates, Flip-Flops, counters etc.) and interconnect of circuit blocks and the

functionality. Various CAD tools are available to synthesize a circuit based on the

HDL. The most widely used synthesis tools come from two CAD companies.

Synposys and Cadence.

Page 25: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 12

Without going into details, we can say that the VHDL can be called as the "C"

of the VLSI industry. VHDL stands for "VHSIC Hardware Definition Language",

where VHSIC stands for "Very High Speed Integrated Circuit". This language is used

to design the circuits at a high-level, in two ways. It can either be a behavioural

description, which describes what the circuit is supposed to do, or a structural

description, which describes what the circuit is made of. There are other languages for

describing circuits, such as Verilog, which work in a similar fashion. Both forms of

description are then used to generate a very low-level description that actually spells

out how all this is to be fabricated on the silicon chips. This will result in the

manufacture of the intended IC.

2.4.2 A Typical Analog Design Flow is as follows

In case of analog design, the flow changes somewhat. Specifications

Architecture Circuit Design SPICE Simulation Layout Parametric Extraction / Back

Annotation Final Design Tape Out to foundry.

While digital design is highly automated now, very small portion of analog

design can be automated. There is a hardware description language called AHDL but

is not widely used as it does not accurately give us the behavioral model of the circuit

because of the complexity of the effects of parasitic on the analog behavior of the

circuit. Many analog chips are what are termed as “flat” or non-hierarchical designs.

This is true for small transistor count chips such as an operational amplifier, or a filter

or a power management chip. For more complex analog chips such as data converters,

the design is done at a transistor level, building up to a cell level, then a block level

and then integrated at a chip level. Not many CAD tools are available for analog

design even today and thus analog design remains a difficult art. SPICE remains the

most useful simulation tool for analog as well as digital design.

2.5 Classification of VLSI design

VLSI designs can be classified into the following based on the effort

required for designing.

2.5.1 Full Custom IC Designs

These designs include logic cells which are customized and all mask layers

are also customized specific to the design. This approach is generally taken when

there are no suitable existing cell libraries available that can be used for the entire

design. This type of designs involves a lot of manual work and attention towards the

specs of the design.

Page 26: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 13

Figure 2.1 Full Custom IC Design

2.5.2 Semi-custom IC Designs

These designs include logic cells which are predesigned and some of mask

layers are customized specific to a design. Cell libraries contain all the predesigned &

characterized cells. Semi-custom IC designs are further classified in to two categories:

a)Field Programmable Gate Array

Fully fabricated FPGA chips containing thousands of logic gates or even

more, with programmable interconnects, are available to users for their custom

hardware programming to realize desired functionality. This design style provides a

means for fast prototyping and also for cost-effective chip design, especially for low-

volume applications. A typical field programmable gate array (FPGA) chip consists of

I/O buffers, an array of configurable logic blocks (CLBs), and programmable

interconnect structures. The programming of interconnects is implemented by

programming of RAM cells whose output terminals are connected to the gates of

MOS pass transistors. A general architecture of FPGA from XILINX is shown

Figure 2.2 General architecture of Xilinx FPGAs

Page 27: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 14

b) Gate array based IC designs

In gate array based IC designs the transistors are predefined on the silicon

wafer. The predefined pattern of transistor on a gate array is the base array and

smallest element that is replicated to make the base array is the base cell. Only the top

few layers of metal, which define the interconnect between transistors are defined by

the designer using custom masks.

This type of IC designs contains the logic cells which are in gate array library.

The logic cells in the gate array library are often called Macro's.

Figure 2.3 Gate Array based Design

c) Standard Cell Based IC designs

It uses predesigned logic cells (AND, OR, MUX and Flip-Flop's) known as

standard cells. These standard cells may be used in combination with larger

predesigned cells such as Micro controllers, Microprocessors, etc. The advantage of

Standard Cell Based IC designs is that designers save time, money and reduce risk by

using a predesigned, pretested and precharacterized standard cell library.

Figure 2.4 Standard cell IC design

Page 28: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 15

2.6 Some of application of VLSI

2.6.1 Industrial Applications

• Microcontrollers & Microprocessors.

• Interfacing circuits.

• Image sensors.

• Robotics.

2.6.2 Communication Applications

• Modulators.

• Demodulators.

• Cellular handset

• Modems.

• Data converters.

• Frequency synthesizers.

2.6.3 Science Applications

• Automated devices.

• Developing sophisticated tools

• In astronomy.

In oceanography.

Page 29: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 16

CHAPTER 3

FULL CUSTOM DESIGN FLOW

While digital design is highly automated now, very small portion of analog

design can be automated. There is a hardware description language called AHDL but

is not widely used as it does not accurately give us the behavioral model of the circuit

because of the complexity of the effects of parasitic on the analog behavior of the

circuit. Many analog chips are what are termed as “flat” or non-hierarchical designs.

This is true for small transistor count chips such as an operational amplifier, or a filter

or a power management chip. For more complex analog chips such as data converters,

the design is done at a transistor level, building up to a cell level, then a block level

and then integrated at a chip level. Not many CAD tools are available for analog

design even today and thus analog design remains a difficult art. SPICE remains the

most useful simulation tool for analog as well as digital design.

These designs include logic cells which are customized and all mask layers are

also customized specific to the design. This approach is generally taken when there

are no suitable existing cell libraries available that can be used for the entire design.

This type of designs involve a lot of manual work and attention towards the specs of

the design.

The back-end design of layout implementation known as integrated circuit

(IC) layout -- is simplistically divided into ASIC-style flow and full-custom flow.

This article will try to help users define the various flavors of full-custom layout. The

concepts presented here apply in general. However, the examples and references

shown refer primarily to CMOS layout design. For a newcomer to VLSI design, full-

custom flow means polygon-level layout done entirely through the use of simple

polygon pusher software. A lot of people around the world perform this function and

common wisdom says the only solution to increasing the quantity and speed of layout

is to hire more people. In reality, there are four distinct flavors of full-custom layout

design and each offers a range of possibilities for automation:

• Full-custom layout driven by area limitations or special application needs: This

type of layout is made up of repeated complex structures like sense amplifiers,

decoders, adders, multipliers -- in general, a datapath with tight control over area,

signal noise, bit symmetry. We refer to this type of layout as "datapath layout."

Page 30: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 17

• Full-custom layout to address high performance or analog circuitry design: This

includes phase-locked loops (PLLs), digital-to-analog converters or analog-to-

digital converters (DACs/ADCs), electrostatic discharge (ESD) structures,

regulators, radio frequency (RF) speed requirements, or techniques to meet low-

power needs. Let's call this type of layout "analog layout."

• Full-custom layout that requires greater attention to area and performance than the

full digital (ASIC) flow, but has less stringent requirements for speed and less

need for control over device-level layout than datapath or analog layout: We call

this type of layout "custom digital layout."

• Full-custom layout for cell development: Cells are defined as logical building

blocks that are part of a family of components that share common abutment rules,

performance characteristics, or functionality. Examples would include the cells

within a standard cell library or family of Pad cells. Let's call this type of layout

"cell layout."

3.1 Scope and Purpose of Work

Full custom layout usually enables the layout designer to pack his devices in a

smaller area compared to the automated process but it is more tedious. The automated

process, on the other hand, is done using standard cells and usually takes more real

estate space but it is much faster. Layout is done by using different tools such as

Layout plus editor, Layout XL tool etc.

Verification checks are essential to any successful layout design, since they

account for the various allowances that need to be given during actual fabrication and

to account for the sizes and the steps involved in generating masks for the final layout.

The layout is very much process dependent, since every process has a certain fixed

number of available masks for layout and fabrication. In the design flow, after layout

the verification process is also very important. There are many failure mechanisms in

IC design and fixing the error is very expensive. We should take the approach that we

only have one chance to get our design right, because a revision to a design is a very

lengthy and costly process. A robust verification plan is required for best results.

3.2 Design Flow

The full custom Integrated circuit design flow is illustrated below. To facilitate

coordination, design and layout are developed in a full concurrent engineering style.

The designer tries a new solution and the layout must match it in the pitch-limited

spot. For such a design style, a flow that allows architecture exploration and fast back

Page 31: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 18

annotation to design is a must.

Figure 3.1 Typical Full Custom IC Design Flow

As seen in the above figure the flow starts with the design specification from

the customer which includes all the system requirements. Then comes the schematic

capture in which various components pertaining to the required design are placed and

are interconnected and there after the design and checked and saved to verify proper

functioning.

The flow from layout to design and back can iterate as often as five or ten

times. And yet, a "good solution" may still not be "clean" when passing through

verification. Due to the nature of the processes in this case, we may be forced back to

schematic design for small adjustments. Simulation involves capturing the design

schematic and further creating its symbol then the setup is requires to be analysed

with Analog Design Environment along with the input for simulation. A layout is

basically a drawing of the masks from which the design will be fabricated.

“Therefore, layout is just as critical as specifying the parameters of your devices

because it determines whether yours is a working design or a flop.” After the layout is

Page 32: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 19

been done comes the physical verification checks that include three essential checks-

DRC, LVS and ERC. In order to reduce the complexity of the circuit in terms of

power consumed the parasitic extraction is performed and the relevant simulation and

re-evaluation with and without parasitics is accomplished. Finally if it agrees all the

design specified rules it’s then sent for fabrication. The typical full custom IC design

flow is explained in detail below.

3.2.1 Design Specifications

The design flow for a transistor-level circuit layout always starts with a set of

design specifications.

The "specs" typically describe the expected functionality (Boolean operations)

of the designed block, Such as the maximum allowable delay times, the silicon area

and other properties such as power dissipation. Usually, the design specifications

allow considerable freedom to the circuit designer on issues concerning the choice of

a specific circuit topology, individual placement of the devices, the locations of input

and output pins, and the overall aspect ratio (width-to-height ratio) of the final design.

Note that the limitations spelled out in the initial design specs typically require certain

design tradeoff, such as increasing the dimensions of the transistors in order to reduce

the delay times.

3.2.2 Schematic Capture

Schematic is created at transistor level or gate level using a schematic editor.

These editors provide simple, intuitive means to draw, to place and to connect

individual components that make a design reaching required specs. The resulting

schematic drawing must accurately describe the main electrical properties of all

components and their interconnections.

Schematic also includes power and ground connections, as well as all pins for

input and output signals of a circuit. The generation of a complete circuit is therefore

the first important step of the transistor level design flow.

The view of schematic diagram is shown in the figure 2.2 below.

Some properties of the components and the interconnections between the

devices are subsequently modified as a result of iterative optimization steps. These

later modifications and improvements on the circuit must also accurately reflected in

the most current version of the corresponding schematic. The design of schematic is

by keeping the layout considerations in mind like, whether device values realizable in

layout, giving same W/L ratio for matching transistors, preferring the sizes of devices

keeping area in consideration, etc.

Page 33: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 20

Figure 3.2 Schematic design of 4-input NOR gate.

3.2.3 Symbol Creation

A circuit design may consist of smaller hierarchical components, to identify

such modules in design process a symbol will be created which corresponds to that

particular module. This process largely simplifies the schematic representation of the

complete system. The symbol view of a circuit module stands for collection of all

components within the module. A symbol view of the circuit is also required for some

of the subsequent simulation steps, thus the schematic capture of the circuit topology

is usually followed by the creation of a symbol to represent the entire circuit. This

icon as shown in figure 2.3 can now be used as the building block of another module.

Figure 3.3 Symbol view of 4-input NOR gate

3.2.4 Simulation

After transistor level description of circuit using schematic editor, the

electrical performance and the functionality of the circuit must be verified using a

simulation tool. Based on simulation results, the designer usually modifies some of

the device properties in order to optimize the performance. The detailed transistor

Page 34: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 21

level simulation of design will be the first in depth validation of its operation, hence it

is extremely important to complete this step before proceeding with the subsequent

design optimization steps.

3.2.5 Layout

Layout is nothing but the preparation of masks of a particular design. The

layout designer describes the detailed geometry's and the relative positioning of each

mask layer to be used in actual fabrication, using a layout editor. Physical layout

design is very tightly linked to overall circuit performance like area usage, speed,

power dissipated, etc. as the physical structure determines the transconductance of the

transistors. The detailed mask layout of logic gates requires very intensive and time

consuming design efforts.

Figure 3.4 Layout of AND gate

The physical design of CMOS logic gates is an iterative process, which starts

with the circuit topology and initial sizing of the transistors. It is extremely important

that the layout must not violate any of design rule, in order to ensure a high

probability of defect free fabrication of all features described in the mask layout.

Another alternative of generating the mask layout is to make use of automated tools.

This will generate a layout from a schematic using the device level placer. Analog

layout is the place where the layout designer needs to understand the phenomena that

happens within the devices, physical connections, implants, and needs to have a good

knowledge of semiconductor physics. For example, in a design operating at speeds up

Page 35: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 22

to 10 GHz, each small detail that is forgotten will impact performance. This is the

place where a layout designer can enhance or destroy a design performance based on

his or her capability to apply proper methodologies for each type of circuit. Interlaced

devices, common centroid placement and connectivity, differential pairs routing,

substrate noise and jitter -- all of them are playing a crucial role in the cell/block

performance. Unlike other types of design, analog design deals with capacitors,

resistors, and inductors; automation is often seen as impossible.

3.2.6 Design Rule Check

The created mask layout must conform to a complex set of design rules, in

order to ensure a lower probability of fabrication defects. A tool built into the Layout

Editor, called Design Rule Checker, is used to detect any design rule violations during

and after the mask layout design.

The detected errors are displayed on the layout editor window as error

markers, and the corresponding rule is displayed in a separate window. The designer

must perform DRC (in a large design, DRC is usually performed frequently - before

the entire design is completed), and make sure that all layout errors are eventually

removed from the mask layout, before the final design is saved.

The most basic design rules are shown in the diagram below. The first are

single layer rules. A width rule specifies the minimum width of any shape in the

design. A spacing rule specifies the minimum distance between two adjacent objects.

These rules will exist for each layer of semiconductor manufacturing process, with the

lowest layers having the smallest rules and the highest metal layers having larger

rules.

Figure 3.5 The three basic DRC checks

A two layer rule specifies a relationship that must exist between two layers.

For example, an enclosure rule might specify that an object of one type, such as a

contact or via, must be covered, with some additional margin, by a metal layer.

There are many other rule types not illustrated here. A minimum area rule is

just what the name implies. Antenna rules are complex rules that check ratios of areas

Page 36: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 23

of every layer of a net for configurations that can result in problems when

intermediate layers are etched. Many other such rules exist and are explained in detail

in the documentation provided by the semiconductor manufacturer.

Academic design rules are often specified in terms of a scalable parameter, λ,

so that all geometric tolerances in a design may be defined as integer multiples of λ.

This simplifies the migration of existing chip layouts to newer processes. Industrial

rules are more highly optimized, and only approximate uniform scaling. Design rule

sets have become increasingly more complex with each subsequent generation of

semiconductor process.

3.2.7 LVS-Layout v/s Schematic

Circuit extraction is performed after the mask layout design is completed, in

order to create a detailed netlist (or circuit description) for the simulation tool. The

circuit extractor is capable of identifying the individual transistors and their

interconnections (on various layers), as well as the parasitic resistances and

capacitance s that are inevitably present between these layers. Shown below is an

example of the extracted report after LVS check is been performed.

Figure 3.6 LVS Extracted netlist

Thus, the "extracted net-list" can provide a very accurate estimation of the

actual device dimensions and device parasitic that ultimately determines the circuit

performance. The extracted net-list file and parameters are subsequently used in

Layout-versus-Schematic comparison and in detailed transistor-level simulations

(post-layout simulation).

Page 37: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 24

In most cases the layout will not pass LVS the first time requiring the layout

engineer to examine the LVS software's reports and make changes to the layout.

Typical errors encountered during LVS include:

1. Shorts: Two or more wires that should not be connected have been and must be

separated.

2. Opens: Wires or components that should be connected are left dangling or only

partially connected. These must be connected properly to fix this.

3. Component Mismatches: Components of an incorrect type have been used (e.g. a

low Vt MOS device instead of a standard Vt MOS device)

4. Missing Components: An expected component has been left out of the layout.

5. Parameter Mismatch: Components in the netlist can contain properties. The LVS

tool can be configured to compare these properties to a desired tolerance. If this

tolerance is not met, then the LVS run is deemed to have a Property Error. A

parameter that is checked may not be an exact match, but may still pass if the LVS

tool tolerance allows it. (example: if a resistor in a schematic had resistance=1000

(ohms) and the extracted netlist had the a matched resistor with

resistance=997(ohms) and the tolerance was set to 2%, then this device parameter

would pass as 997 is within 2% of 1000 ( 997 is 99.7% of 1000 which is within

the 98% to 102% range of the acceptable +-2% tolerance error) )

Figure illustrating LVS check of an inverter is shown below.

Figure 3.7 Typical Layout versus Schematic of an Inverter

3.2.8 Circuit Extraction

Circuit extraction is performed after the mask layout design is completed, in

order to create a detailed netlist (or circuit description) for the simulation tool. The

circuit extractor is capable of identifying the individual transistors and their

Page 38: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 25

interconnections (on various layers), as well as the parasitic resistances and

capacitance s that are inevitably present between these layers. Thus, the "extracted

net-list" can provide a very accurate estimation of the actual device dimensions and

device parasitic that ultimately determines the circuit performance. The extracted net-

list file and parameters are subsequently used in Layout-versus-Schematic comparison

and in detailed transistor-level simulations (post-layout simulation).

Figure 3.8 Parasitic Extraction

3.2.9 Post-layout simulation

The electrical performance of a full-custom design can be best analyzed by

performing a post-layout simulation on the extracted circuit net-list. At this point, the

designer should have a complete mask layout of the intended circuit/system, and

should have passed the DRC and LVS steps with no violations. The detailed

(transistor level) simulation performed using the extracted net-list will provide a clear

assessment of the circuit speed, the influence of circuit parasitic (such as parasitic

capacitance s and resistances), and any glitches that may occur due to signal delay

mismatches.

If the results of post-layout simulation are not satisfactory, the designer should

modify some of the transistor dimensions and/or the circuit topology, in order to

achieve the desired circuit performance under "realistic" conditions, i.e., taking into

account all of the circuit parasitic. This may require multiple iterations on the design,

until the post-layout simulation results satisfy the original design requirements.

Finally, note that a satisfactory result in post-layout simulation is still no

guarantee for a completely successful product; the actual performance of the chip can

only be verified by testing the fabricated prototype. Even though the parasitic

extraction step is used to identify the realistic circuit conditions to a large degree from

the actual mask layout, most of the extraction routines and the simulation models used

in modern design tools have inevitable numerical limitations. This should always be

one of the main design considerations, from the very beginning.

3.2.10 Fabrication

Page 39: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 26

Finally ICs are fabricated in a layer process which includes three key process

steps – imaging, deposition and etching. The main process steps are supplemented by

doping and cleaning.

Integrated circuits are composed of many overlapping layers, each defined by

photolithography, and normally shown in different colors. Some layers mark where

various dopants are diffused into the substrate (called diffusion layers), some define

where additional ions are implanted (implant layers), some define the conductors

(polysilicon or metal layers), and some define the connections between the conducting

layers (via or contact layers). All components are constructed from a specific

combination of these layers.

The CMOS fabrication technology requires both n-channel (nMOS) and p-

channel (pMOS) transistors built on the same chip substrate. To accommodate both

nMOS and pMOS devices, special regions must be created in which the

semiconductor type is opposite to the substrate type. These regions are called wells or

tubs. A p-well is created in an n-type substrate or, alternatively, an n- well is created

in a p-type substrate. In the simple n-well CMOS fabrication technology presented,

the nMOS transistor is created in the p-type substrate, and the pMOS transistor is

created in the n-well, which is built-in into the p-type substrate. In the twin-tub

CMOS technology, additional tubs of the same type as the substrate can also be

created for device optimization.

Page 40: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 27

CHAPTER 4

IMPLEMENTATION OF DESIGN

4.1 Priority encoder functioning

In designing 10-line to 4-line and 8-line to 3-line priority encoders several

modules that is he basic gates are required where each and every gate has its proper

working operation. The SN54/74LS147 and the SN54/74LS148 are Priority Encoders.

They provide priority decoding of the inputs to ensure that only the highest order data

line is encoded. Both devices have data inputs and outputs which are active at the low

logic level. The LS147 encodes nine data lines to four-line (8-4-2-1) BCD. The

implied decimal zero condition does not require an input condition because zero is

encoded when all nine data lines are at a high logic level. The LS148 encodes eight

data lines to three-line (4-2-1) binary (octal). By providing cascading circuitry

(Enable Input EI and Enable Output EO) octal expansion is allowed without needing

external circuitry. The SN54/74LS748 is a proprietary Motorola part incorporating a

built-in deglitcher network which minimizes glitches on the GS output. The glitch

occurs on the negative going transition of the EI input when data inputs 0–7 are at

logical ones. The only dc parameter differences between the LS148 and the LS748 are

that (1) Pin 10 (input 0) has a fan-in of 2 on the LS748 versus a fan-in of 1 on the

LS148; (2) Pins 1, 2, 3, 4, 11, 12 and 13 (inputs 1, 2, 3, 4, 5, 6, 7) have a fan-in of 3

on the LS748 versus a fan-in of 2 on the LS148. The working can be clearly explained

with the help of functional table shown below.

Table 4.1 Truth table of Priority Encoders

By using Karnaugh map techniques, the above truth tables for both 10-line to

4-line (74LS147) and 8-line to 3-line (74LS148) priority encoder can be minimized

and the functional diagram consisting of various logic gates can be implemented as

Page 41: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 28

shown in figure 4.1.

Figure 4.1 Functional Block Diagram

After designing the functional block diagram, various instances present inside

it are individually created and simulated in the analog design environment (ADE) to

verify the functionality and if the functionality roves to be correct finally the layout is

implemented. This chapter includes the various modules used in the design along with

the schematic, symbol, test circuit, layout and simulation results of each and every

block.

4.2 Logic gates

Digital systems are said to be constructed by using logic gates. These gates are

the AND, OR, NOT, NAND, NOR, EXOR and EXNOR gates. The basic operations

are described below with the aid of truth tables

4.2.1 AND gate

Figure 4.1 And gate symbol Table 4.1 And gate truth table

The AND gate is an electronic circuit that gives a high output (1) only if all its

inputs are high. A dot (.) is used to show the AND operation i.e. A.B. Bear in mind

Page 42: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 29

that this dot is sometimes omitted i.e. AB

4.2.2 OR gate

Figure 4.2 OR gate symbol Table 4.2 And gate truth table

The OR gate is an electronic circuit that gives a high output (1) if one or

more of its inputs are high. A plus (+) is used to show the OR operation.

4.2.3 NOT gate

Figure 4.3 NOT gate symbol Table 4.3 NOT gate truth table

The NOT gate is an electronic circuit that produces an inverted version of the

input at its output. It is also known as an inverter. If the input variable is A, the

inverted output is known as NOT A. This is also shown as A', or A with a bar over

the top, as shown at the outputs. The diagrams below show two ways that the NAND

logic gate can be configured to produce a NOT gate. It can also be done using NOR

logic gates in the same way.

4.2.4 NAND gate

Figure 4.4 NAND gate symbol Table 4.4 NAND gate truth table

This is a NOT-AND gate which is equal to an AND gate followed by a NOT

gate. The outputs of all NAND gates are high if any of the inputs are low. The

symbol is an AND gate with a small circle on the output. The small circle represents

inversion.

4.2.5 NOR gate

Page 43: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 30

Figure 4.5 NOR gate symbol Table 4.5 NOR gate truth table

This is a NOT-OR gate which is equal to an OR gate followed by a NOT

gate. The outputs of all NOR gates are low if any of the inputs are high.

The symbol is an OR gate with a small circle on the output. The small circle

represents inversion.

4.2.6 EXOR gate

Figure 4.6 EXOR gate symbol Table 4.6 EXOR gate truth table

The 'Exclusive-OR' gate is a circuit which will give a high output if either,

but not both, of its two inputs are high. An encircled plus sign ( ) is used to show

the EOR operation.

4.2.7 EXNOR gate

Figure 4.7 EXNOR gate symbol Table 4.7 EXNOR gate truth table

The 'Exclusive-NOR' gate circuit does the opposite to the EOR gate. It will

give a low output if either, but not both, of its two inputs are high. The symbol is an

EXOR gate with a small circle on the output. The small circle represents inversion.

The NAND and NOR gates are called universal functions since with either

one the AND and OR functions and NOT can be generated.

4.3 Importance of layout

Layout is the process of creating an accurate physical representation of an

engineering drawing (may be a schematic or else the netlist) using the tools that

Page 44: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 31

conforms to the constraints imposed by the manufacturing process, the design flow,

and the performance requirements shown to be feasible by simulation.

4.3.1 Automated layout

Automated process is the one with which the layout is done automatically just

by submitting the netlist to that tool.

It is much faster, and easy and less amount of tedious job for the layout

designer. But the disadvantage of using the automated process is that “it is not

intelligent”. Not intelligent in the view of some analog routing techniques and other

guidelines.

“MATCHING” cannot be obtained by using the automated process.

4.3.2 Custom layout

Custom layout is the manual layout done from the starting level. The layout

engineer has to take care of everything .i.e.,

• creating the devices

• doing floor plan,

• Take care of all the matching guidelines, routing and verification.

It is much tedious and slower job .But it is in the hands of the layout engineer

to take care of all the issues and other “MATCHING” guidelines. The process of the

layout starts from the input given by the design engineer .It can be a schematic for

analog design and can be the net list for the digital design.

4.4 Inputs from the designer

a) Schematic from the Circuit Designer

The Schematic mainly consists of the transistors symbol with the length and

width parameters of the transistor interconnected in various ways according to the

designer requirements.

• P-Transistor (High or Low Voltage).

• N-Transistor (High or Low Voltage).

• Resistors (Poly, Diffusion, Nwell, Metal resistors ).

• Capacitors (Moscaps, Poly-Metal, Metal-Metal Capacitors).

• Diode's (P-type , N-type Diode )

are the different devices that can be seen in the design.

b) Spice File

The spice netlist which contains the physical representation of the schematic

Page 45: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 32

data which is required while doing Layout Vs Schematic check.

c) Matching Transistors

Designer will specify which transistors is to be matched, while doing layout .

For Example, The Differential Pair, Current Mirrors.

d) Current Densities

Designer will specify the current requirements if any net requires more than 1

mA of current. The widths of the nets which is specified by the Circuit Designer can

be calculated by using the current density calculations using Design Rule Document .

e) Critical Nets

The circuit designer will specify the High frequency nets which is to be taken

care by the layout designer while drawing the layouts. Critical nets should have less

parasitic and less routing length. These nets should not be routed near critical analog

signal like differential nets.

f) Matched Net

Circuit Designer will specify the nets, which should have to be matched

carefully. The layout Designer should match those nets such that both nets will face

same environment and should have same length.

For example, in OPAMP, the two input nets should not produce any

mismatches, because it will produce offset problems. So always try to provide the

same type of environment for those nets.

g) Guard rings

Generally the Guard rings are used for the isolation of the circuits, Sometimes

the Designer wants to isolate some sensitive transistor from other transistor, at that

time the schematic designer will specify the guard rings for those type of the

transistors. Sometimes the Layout designer will take decisions of placing the guard

rings without interference of the Designer, The situation like when there is a chance

of lot of noise to be penetrated in to the circuit.

“Guard rings minimize substrate resistance and reduce propagation of noise

in substrate, preventing latch up.”

4.5 From Foundry

a) Technology File

Page 46: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 33

The technology file consists of the about layer definitions, tech layers, tech

layer purpose, tech displays, stream layers, and physical layers.

b) Display file

Display file mainly consists of the color display section where the color of

each layer is defined and display style section where the style for each layer to be

displayed is defined.

c) Rule files

There are three types of rule files available from any foundry to test the

design,

4.5.1 DRC

The design rule check step checks that all polygons and layers from the layout

database meet all of the manufacturing process rules. The design rules specify the

limits of a manufacturable design.

4.5.2 LVS

Layout versus Schematic checks the layout database whether it is in

accordance with schematic (netlist).

The Functions of the LVS are:

Circuit Element Extraction.

Electrical Node Extraction

Layout Versus Schematic Check.

4.5.3 ERC

An electrical rule check is to be done to ensure that there are no short or open

connections in the design.

EXTRACTION: The extraction deck will extract the parasitic resistance and

capacitance of different nets from the layout.

4.6 Layers Classification

Layers may be the basic silicon layers, which form the basic devices, or may

be metal layer which define the interconnectivity between layer and devices.

• Conductors: They are capable of carrying signal voltages. Diffusion areas,

Metals and Polysilicon layers, and well layers fall into this category.

• Isolation Layers: They are present to provide isolation to avoid Short circuits

between separate electrical nodes. Example of isolation layers are dielectric layers

between the metal layers.

Page 47: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 34

• Contacts or Via: These layers define cuts in the insulation layer that separate the

conducting layers and allow the contact down through the cut or contact hole.

• Implant layers: These layers do not explicitly define a new layer or contact, but

they will change existing conductor property.

• Device recognition layers: These layers do not contain any electrical

characteristics. As name implies these layers are used to identify different types of

devices. Mainly used by verification tools.

4.7 Analog Layout

4.7.1 Importance of Analog Layout:

Analog integrated circuits are very important as interfaces between the digital

parts of integrated electronic systems and the outside word. A large portion of the

effort involved in designing these circuits is spent in the layout phase, which

continues to be a manual, time-consuming and error-prone task. This is mainly due to

the continuous nature of analog signals, which causes analog circuit performance to

be very sensitive to layout parasitics. Successful automation of analog layout requires

a structured layout methodology, state-of-the-art CAD tools and a well-integrated

design system. In this chapter, we describe such a system and show its importance in

obtaining a manufacturable layout that meets all specifications at minimum cost and

in the minimum time. We give an overview of the advanced methods and tools

currently available for analog layout generation, migration and reuse.

4.8 Analog Vs Digital

Analog layout is usually done manually by circuit designer, but digital layout

is usually done automatically by CAD tools. For example in analog layout, the layout

of a NAND gate is done manually, but in digital layout, the layout of a NAND gate is

already in the CAD tool's library, and the CAD tool uses the different layout cells in

its library to construct the layout of a digital circuit usually designed using VHDL or

Verilog.

In analog layout the length of transistors is not usually the minimum, but in

digital it is. In analog layout matching of transistors is very important but it is not the

case in digital layout.

Transistor as switch in Digital Transistor as amplifier, resistor and other

passive in analog.

In Digital Layout, the W/L ratios used are the minimum feature size. This is

Page 48: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 35

done to minimize the area and maximize the packing density. When the area is

minimized, the delay also gets minimised. Digital design is easier because we can use

cell-based methodology to do a layout, wherein you already have predefined layouts

of standard cells and use them to create larger blocks. This saves time and money.

Analog layout on the other hand is tougher as more importance is given to transistor

and interconnects details. This is done to achieve matching and the required currents

and voltages. Analog design is based mostly on the drain currents and bias voltages.

So, layout has to be done carefully to achieve these voltages and currents else the

design will fail when manufactured. In analog layout/design we trade off area for

performance.

4.9 Some of Important Analog Layout Guidelines

a) Don't Use Poly As Interconnect

In Digital designs the o/p is either high or low that is it can be either vdd or

gnd. But it is not the case in the analog design. Poly is a high resistive material so

using poly as interconnect can act as a resistive path to that sensitive signal in the

analog circuitry. Even this small voltage drop varies the ultimate o/p by a lot.

Metal1 high current density, poly very low current density

b) Don't Go For Minimum Metal Widths

By doing so, there may be the chance of breaks in the metal due to

manufacturing Deviations. The metal width determines the strength of the signal

that can be handled by it. Use more metal widths as the routing resistance

depends on the width of the metal through which it is routed.

Smaller metal width Larger metal width

Possibility of Open

Possibility of open can be avoided

Using Metal As Interconnect Using POLY As Interconnect

Preferred Not Preferred

Page 49: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 36

c) Don't Go For Minimum Spacing

There may be chances of shorting of adjacent metals due to electro

migration (explained in coming chapters). The parasitic capacitance also increases

and there may be chances of coupling of two different signals that are running

parallel.

Minimum metal spacing Greater metal spacing

Parasitic cap.

d) Don't take power (vdd or vss) from Guard ring to MOS

For the flow of substrate noise in to the MOS transistor. Guard rings are use

to avoid LATCHUP. Taking power from guard rings has a larger no. of

disadvantages:

Source taking power from guard ring Guard ring (vdd)

i. Substrate noise always flow in the guard rings. So taking power from guard ring

has a chance

ii. Generally the metal width used for guard ring is very less. So it cannot support the

current

density required for the MOS transistor.

Source taking power from guard ring Source taking power from the vdd line

e) Use as many vias and contacts as possible

These are used wherever we want to jump from one metal layer to the other.

These are made of low resistance materials. Use at least more than one, as the number

increases the over all resistance at the point of jump reduces.

Possibility of signal coupling Possibility of signal coupling can

be avoided

VDD

vdd metal line

Not Preferred Preferred

Page 50: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 37

VIA1'S

USING MORE NO OF VIAS

Smaller Value Resistance

EQ RES R = (R1*R2*R3*R4*R5*R6) /

(R1+R2+R3+R4+R5+R6)

USING LESS VIAS

larger the value of resistance to signal EQ RES R = (R1*R2) / (R1+R2)

f) It Is Always Better To Follow Metal Convention

Always prefer to use alternate metals in same direction. Using the different

metals without proper convention create problems in routing. In digital routing

without following the metal convention it is impossible to route complete block..

Avoid using jumpers for shorter length routing

g) Avoid Using Longer Routing Lengths :

Using longer lengths for routing increases the drop across the whole length of

the routing. And also it adds parasitic cap to that net.

“ The Longer the Length, the More is the Drop,

More is the Parasitic Cap.

h) Don't Chop Guard Ring For Routing

Chopping Guard ring for drain connection Separate metal connection

i) Don't Use Contacts And avoid Routing Over The Active Gate Area

The presence of contacts and routing over the active gate area increases the

Not Preferred Preferred

Page 51: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 38

significant threshold voltage mismatches. As gate poly is very thin, there is a chance

that contact may penetrate in

To the gate oxide and routing may induce stress mismatches mainly to

matched pair. Even if leads need to be crossed over the active gate area they must be

maintained in symmetry.

This precaution will minimize the impact of metallization on matching but not

totally eliminate it. So for high precision matching one should entirely avoid routing

leads across the active gate regions.

j) Keep Deep Diffusions Away From The Active Gate Area

Deep diffusions can affect the matching of near by mos transistors. These

diffusions extend a considerable distance beyond their junctions, and the excess

dopant that they introduce can shift the threshold voltages and alter the

transconductanc of near by transistors.

k) Use Separate Power Supplies For Analog And Digital Blocks

Analog blocks are the very sensitive blocks where as the Digital blocks are

noisy. So always the analog blocks must be protected from the digital blocks.

1)Place the digital blocks completely away from the analog block so that the noise

from the digital block does not enter the sensitive side.

2)And use separate power supplies for both analog and digital. Using same power

supplies can affect the analog blocks because always there will be switching present

in the digital supply

l)Always Keep The Matched MOS Away From The Power Transistors

Power Transistors are those that uses a larger values of currents. Because they

carry huge amount of currents they dissipate more amount of heat (power dissipation

= i*i*R). The heat dissipated from the power device can extremely affect the matched

transistors. And proper protection is to be provided for the power transistor to absorb

that emitted heat.

Preferred Not Preferred

Page 52: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 39

4.10 AND 2 input

Figure 4.8 2 input AND Schematic and layout

Figure 4.9 2 input AND symbol and test circuit

Figure 4.10 two input waveform

Page 53: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 40

4.11 Not Gate

Figure 4.11 NOT Schematic and Layout

Figure 4.12 NOT Symbol and Test circuit

Figure 4.13 NOT Simulation waveforms

Page 54: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 41

4.12 NOR 2 input

Figure 4.14 2 input NOR Schematic and Layout

Figure 4.15 2input NOR Symbol and Test circuit

Figure 4.16 2input NOR Simulation waveforms

Page 55: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 42

4.13 NAND 2 input

Figure 4.17 2input NAND Schematic and Layout

Figure 4.18 2input NAND Symbol and Test circuit

Figure 4.19 2input NAND Simulation waveforms

Page 56: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 43

4.14 AND 3 input

Figure 4.20 3input AND Schematic and Layout

Figure 4.21 3input AND Symbol and Test circuit

Figure 4.22 3input AND Simulation waveforms

Page 57: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 44

4.15 AND 4 input

Figure 4.23 4input AND Schematic and Layout

Figure 4.24 4input AND Symbol and Test circuit

Figure 4.25 4input AND Simulation waveforms

Page 58: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 45

4.16 NOR 4 input

Figure 4.26 4input NOR Schematic and Layout

Figure 4.27 4input NOR Symbol and Test circuit

Figure 4.28 4input NOR Simulation waveforms

Page 59: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 46

4.17 AND 5 input

Figure 4.29 5input AND Schematic and Layout

Figure 4.30 5input AND Symbol and Test circuit

Figure 4.31 5input AND Simulation waveforms

Page 60: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 47

4.18 NOR 5 input

Figure 4.32 5input NOR Schematic and Layout

Figure 4.33 5input nor Symbol and Test circuit

Figure 4.34 5input NOR Simulation waveforms

Page 61: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 48

4.19 NAND 9 input

Figure 4.35 9input NAND Schematic and Layout

Figure 4.36 9input NAND Symbol and Test circuit

Figure 4.37 9input NAND Simulation waveforms

Page 62: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 49

4.20 8x3 Priority Encoder

Figure 4.38 8x3 Priority Encoder Schematic and Layout

Figure 4.39 8x3 Priority Encoder Symbol and Test circuit

Page 63: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 50

Figure 4.40 Priority Encoder Simulation waveforms without parasitics

Figure 4.41 8x3 Priority Encoder Simulation waveforms with parasitics

Page 64: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 51

Figure 4.42 8x3 Priority Encoder with no DRC errors

Figure 4.43 8x3 Priority Encoder with no ERC errors

Figure 4.44 8x3 Priority Encoder with no LVS errors

Page 65: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 52

Figure 4.45 8x3 Priority Encoder Layout with RC Extraction

4.21 10x4 Priority Encoder

Figure 4.46 10x4 Priority Encoder Symbol and Test circuit

Page 66: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 53

Figure 4.47 10x4 Priority Encoder Schematic and Layout

Figure 4.48 10x4 Priority Encoder Simulation waveforms without parsitics

Page 67: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 54

Figure 4.49 10x4 Priority Encoder Simulation waveforms with parasitics

Figure 4.50 10x4 Priority Encoder with no DRC errors

Figure 4.51 10x4 Priority Encoder with no ERC errors

Page 68: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 55

Figure 4.52 10x4 Priority Encoder with no LVS errors

Figure 4.53 10x4 Priority Encoder Layout with RC Extraction

Page 69: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 56

CHAPTER 5

CONCLUSIONS

An in-depth analysis of the individual logic circuits and their corresponding

simulation results was presented. Power consumption has a major impact on the

functionality and performance of a system. Various power optimization techniques

were used in order to reduce to overall power consumed by both the priority encoders.

A key challenge facing current and future computer designers is to reverse the

trend by removing layer after layer of complexity, opting instead for clean, robust,

and easily certifiable designs, while continuing to try to devise novel methods for

gaining performance and ease-of-use benefits from simpler circuits that can be readily

adapted to application requirements.

The project could not be accomplished without the use of Cadence EDA tools

that has to be attributed. It is the tools that accurately generated that results and its

easily modifiable graphical representation of the product proved advantageous. The

user can nearly view the actual product on screen, make any modifications to it,

and present his/her ideas onscreen without any prototype, especially during the early

stages of the design process.

Finally, the improved 10-line to 4-line and 8-line to 3-line circuits presented to

build the large systems, such as high performance microprocessors with low power

consumption. Through simulations results, we conclude that our new Priority

encoders consume considerably less power in the order of milli watts. With the help

of this priority encoder we can design efficient circuits that find its applications as in

elevators, winding machines, conveyors, etc. This kind of low power and high speed

priority encoders will be used in designing include detecting interrupts in

microprocessor applications and its applications in various fields. Its robustness

against transistor downsizing and voltage scaling allows the efficient power

optimization of noncritical signal nets and of entire circuit components.

It is the intention of this report to integrate these various topics and to provide

some sense of cohesiveness to the full custom design.

Page 70: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 57

S.No Type Typical data

delay(ns)

Typical power

dissipation(mW)

1 8X3 Priority encoder

(74LS148) 15 60

2 10X4 Priority encoder

(74LS147) 15 60

Table 5.1 Priority encoder TTL Design as per data sheet

5.1 Targets Achieved: Priority Encoder CMOS Design

S.No Specifications Priority Encoder

8x3

Priority Encoder

10x4

1 Technology 180nm 180nm

2 Supply 1.8v 1.8v

3 Area(µm) 62.26 x 283.15 76.97 x 279.2

4 Power without Parasitics (mW) 5.19 7.3125

5 Power with Parasitics (mW) 5.29 7.8866

6 Typical Data Delay(ns) 20 20

Table 5.2 Priority Encoder CMOS Design Target Achieved

Page 71: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 58

REFERENCES

[1] Yusuf Leblebici, Sung-Mo Kang, CMOS Digital Integrated Circuits, McGraw-

Hill Ryerson Limited, 1996

[2] Jan M. Rabaey, Anantha P. Chandrakasan, Borivoje Nikolić, Digital Integrated

Circuits, 2/e, Pearson Education, 2003

[3] C.V.S Rao, Switching Theory and Logic Design, Dorling Kindersley (India)

Pvt.ltd, 2006.

[4] M. Morris Mano, Michael D. Ciletti, Digital Design, 4th Edition, Prentice Hall,

2006, ISBN 978-0-13-198924-5.

[5] Motorola.Inc, 10-Line-to 4-Line and 8-Line to 3-Line Priority Encoders [online].

Available: http://www.skot9000.com/ttl/datasheets/147.pdf.

Page 72: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 59

APPENDIX

CADENCE OVERVIEW

Introduction

In this, we use the CADENCE to draw the schematic of two stage inverter

and test the circuit and plot its waveforms and find its propagation delay and power

dissipation and note it down draw its layout and check its layout using tools like

DRC, LVS, RCX and we generate the GDS file which is to be given to the fab city

from where the chip is designed. Some of the Tools used in cadence for our design

Schematics L

This is used to design the schematic of the circuit. It consists of in built

MOSFETS and for giving connection we make use of wires and after designing the

schematic we check and save the circuit and then we generate the symbol used for the

design of its test circuit of the schematics after designing its test circuit we will check

and save the circuit

Some of the short cuts used in schematic editor are

• [Press] i – It is used for generation of instances or components used in the design

of the circuit

• [Press] p – It is used for the generation of the pins which are used for giving

inputs and sources to the circuits

• [Press] w – It is used for generating wires, which are used for giving contacts

between the devices. It has two types of wires.

Narrow

Wide

We use this based on the requirements of the circuits

• [Press] f– It is used for fitting the circuit to its original circuits after zooming the

circuit

ADE L (Analog Design Environment)

This is used to run the circuit and plot its outputs and find the propagation

delay and power dissipation of the circuit and we can save the circuit state and

reload it whenever we use that circuit

Layout XL

This is used for designing the layout for the schematics. Some of the short cuts

used in this are:

Page 73: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 60

• [Press] r – This is used for drawing rectangular layers

• [Press] shift + k– This is used for checking whether the required layer is

acquired with the desired length or not

• [Press] f – It is used for fitting the circuit to its original circuits after zooming the

circuit.

DRC: This is mainly used for checking whether the layout is designed

by following the design rules or not. It will notify the design rule violations, if any.

LVS: This is used to check whether the layout designed is exactly

matching with the schematics.

RCX: In this we can find the numbers of resistors and capacitors formed

due to the metal to metal contact and metal to poly contact

Design of Schematic

Initially open the terminal. We open the virtuoso tool by the path shown in the Figure

Figure A.1 Terminal window

Then virtuoso window will be opened along with the WHAT’S-New window.

Close what’s-new window. The virtuoso window:

Figure A.2 Virtuoso

Page 74: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 61

Now go to FILE NEW LIBRARY Create a new library and enter its name

Figure A.3 New Library

Then attach an existing technology GPDK 180 to that library file. This

implies that all files related to 180nm technology are loaded to this library file.

Figure A.4 Technology Library

Figure A.5 New File

Figure A.6 Instance

Page 75: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 62

Figure A.7 Instance Specifications

Then go to FILENEWCELL VIEW and enter its name and press OK

Then a new cell view will be opened.By pressing I, a new instance window will be

opened. Then click on the BROWSE a new window will be opened. Then click

on GPDK180.Then click on EVERY THING. Select NMOS and select its symbol

and click on OK.

The new instance window will be appeared, where we can edit the properties

of the NMOS.

Then click on Hide. Then NMOS symbol will be at the tip of the cursor

wherever you click on the screen there, you can obtain the NMOS. Then by using

wire we can give contact to all the remaining components.

Figure A.8 Schematic circuit

Then click on Check and Save Icon. This will check whether the given

circuit is designed without any errors and it will save the schematic.

Page 76: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 63

Symbol Generation

Click on CreateCell view. Then a new window is opened. Click OK.

Figure A.9 Symbol Generation

Then another window is opened. Adjust pins positions

Figure A.10 Symbol Specification

Then the symbol is generated as:

Figure A.11 Symbol

Page 77: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 64

Then click on Check and Save Icon .This will check whether the given

symbol is generated without any errors and it will save the schematic.

Schematic Simulation

Create a NEW CELL VIEW. Then press I it will open a instance window

from this select a VPULSE and its symbol edit its properties and place it on the newly

created cell view. Similarly select VDC, GND, and symbol of the schematic and

place them on the cell view. Make connections using wires and check and save

the test circuit generated.

Click on LAUNCHADE L.

Click on then a new CHOOSE ANALYSIS window will be open.

Click on tran.Set its stop time to 200nand click on then click on apply

Click on dcand click on and then click on apply.

Figure A.12 ADE Window

Figure A.13 Choosing Analyses

Then click on outputssave all

Page 78: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 65

And click on

Then click on apply.

Figure A.14 Save Options

Then click on Outputs Outputs to be plotted. Select on test schematic

both input and output terminals. Then click on . Then the outputs will be plotted.

Figure A.15 Waveforms

Calculation of Propagation Delay

Click on Calculator. A new window will be opened. Click on

Page 79: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 66

then on delay.

Click on Signal1and select the input from the output waveforms Click on

Signal2 and select the output from the output waveforms

Figure A.16 Calculation of Propagation Delay

Figure A.17 Calculation of Power Dissipation

Then click on append ( ). Then the propagation delay calculated will be

displayed on the screen

Page 80: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 67

Calculation of Power Dissipation

Click on and off the wave. Click on and select the

wire at the VDC terminal. Click on select the pin at the VDC

terminal then click on multiply option on the calculator. Then click on

Special Functions Average append

Design of Layout

In this, design the layout of the circuit from its schematic.

Click on LAUNCH LAYOUT XL then a new window will be opened.

Figure A.18 New file for Layout

Click on OK. Then a new window will be opened.

Click on OPEN NEW TAB. Then a new layout cell view is obtained and a LSW

window will be opened.

By using LSW window we can select required layers of metals, diffusion, substrate.

We can mount the all the active components from the schematic by clicking

on GENERATE FROM SOURCE. Then by giving contacts to the devices we can

complete layout design.

Figure A.19 Progress on DRC

Page 81: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 68

Layout Simulation:

Click on ASSURA DRC

Click on OK. Then its start

Figure A.20 Assura DRC

A window is opened and it shows about the progress

After completing its execution if there are no errors it will display no error

window.

Figure A.21Errors of DRC

Click on ASSURA LVS

Page 82: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 69

Figure A.22 Assura LVS

Click on OK then it will start execution and comparesboth

SCHEMATIC and LAYOUT.

If there are no mismatches then it will display the following window

Click on ASSURA RCX. The following window will be displayed

Figure A.23 Errors for LVS test

Page 83: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 70

Figure A.24 Extraction of RCX

Click on OK. It will create extracted view of the layout.

Figure A.25 RCX Generation

Click on FILE OPEN.Then select AV_EXTRACTED view of the circuit.

Figure A.26 Open File for av_extracted

Page 84: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 71

Click on OK. Then it will open the AV_EXTRACTED view.

Then by zooming it will show the RESISTORS and CAPACITORS formed

will be shown.

GDS File

Generating data stream file is used for designing of the chip at the FAB city.

Click on CIW File Export Stream.gds

A new window will pop up Enter the specifications as mentioned in window

Figure A.27 RCX

Figure A.28 Stream Out

Click on Show Options Click on Layers

Page 85: Full Custom IC Design Implementation of Priority Encoder

Full Custom IC Design Implementation Of Low Power Priority Encoder

Department of Electronics & Communication Engineering 72

Click on Use Automatic Layer Mapping and then click Hide Options Click on

Translate to generate log file

Figure A.29 Stream Specification

Figure A.30 Log File

To generate GDS File in the Terminal Window enter vifilename.gds.