Developing Standard Cells for TSMC 0.25 µm Technology with MOSIS DEEP Rules

Similar documents
EL302 DIGITAL INTEGRATED CIRCUITS LAB #3 CMOS EDGE TRIGGERED D FLIP-FLOP. Due İLKER KALYONCU, 10043

Electrical & Computer Engineering ECE 491. Introduction to VLSI. Report 1

Chapter 2. Digital Circuits

Project 6: Latches and flip-flops

11. Sequential Elements

MUX AND FLIPFLOPS/LATCHES

Design and Simulation of a Digital CMOS Synchronous 4-bit Up-Counter with Set and Reset

Lecture 1: Circuits & Layout

Introduction to CMOS VLSI Design (E158) Lab 3: Datapath and Zipper Assembly

ELEC 4609 IC DESIGN TERM PROJECT: DYNAMIC PRSG v1.2

CMOS VLSI Design. Lab 3: Datapath and Zipper Assembly

12-bit Wallace Tree Multiplier CMPEN 411 Final Report Matthew Poremba 5/1/2009

EE 447/547 VLSI Design. Lecture 9: Sequential Circuits. VLSI Design EE 447/547 Sequential circuits 1

SEQUENTIAL LOGIC. Satish Chandra Assistant Professor Department of Physics P P N College, Kanpur

Lecture 10: Sequential Circuits

CS/EE 6710 Digital VLSI Design CAD Assignment #3 Due Thursday September 21 st, 5:00pm

Chapter Contents. Appendix A: Digital Logic. Some Definitions

Registers and Counters

Computer Architecture and Organization

YEDITEPE UNIVERSITY DEPARTMENT OF COMPUTER ENGINEERING. EXPERIMENT VIII: FLIP-FLOPS, COUNTERS 2014 Fall

Microprocessor Design

SA4NCCP 4-BIT FULL SERIAL ADDER

Advanced Devices. Registers Counters Multiplexers Decoders Adders. CSC258 Lecture Slides Steve Engels, 2006 Slide 1 of 20

DIGITAL CIRCUIT LOGIC UNIT 9: MULTIPLEXERS, DECODERS, AND PROGRAMMABLE LOGIC DEVICES

VLSI Design: 3) Explain the various MOSFET Capacitances & their significance. 4) Draw a CMOS Inverter. Explain its transfer characteristics

(Refer Slide Time: 1:45)

Report on 4-bit Counter design Report- 1, 2. Report on D- Flipflop. Course project for ECE533

Introduction to CMOS VLSI Design (E158) Lecture 11: Decoders and Delay Estimation

COE 202: Digital Logic Design Sequential Circuits Part 1. Dr. Ahmad Almulhem ahmadsm AT kfupm Phone: Office:

Principles of Computer Architecture. Appendix A: Digital Logic

UNIVERSITI TEKNOLOGI MALAYSIA

Introduction Actel Logic Modules Xilinx LCA Altera FLEX, Altera MAX Power Dissipation

Logic Design II (17.342) Spring Lecture Outline

Registers and Counters

Sequential Circuit Design: Part 1

Sequential Circuits: Latches & Flip-Flops

MODULE 3. Combinational & Sequential logic

Chapter 4. Logic Design

Bachelor Level/ First Year/ Second Semester/ Science Full Marks: 60 Computer Science and Information Technology (CSc. 151) Pass Marks: 24

Imperial College OF SCIENCE, TECHNOLOGY AND MEDICINE University of London. Digital IC Design Course

EECS 270 Midterm 1 Exam Closed book portion Winter 2017

(CSC-3501) Lecture 7 (07 Feb 2008) Seung-Jong Park (Jay) CSC S.J. Park. Announcement

Sequential Circuit Design: Part 1

A Combined Combinational-Sequential System

Chapter 6. Flip-Flops and Simple Flip-Flop Applications

A Power Efficient Flip Flop by using 90nm Technology

Scanned by CamScanner

1.b. Realize a 5-input NOR function using 2-input NOR gates only.

Hardware Design I Chap. 5 Memory elements

Lecture 8: Sequential Logic

MOSIS Scalable CMOS (SCMOS) Design Rules. (Revision 7.2) The MOSIS Service USC/ISI Admiralty Way. Marina del Rey, CA

ESE 570 STATIC SEQUENTIAL CMOS LOGIC CELLS. Kenneth R. Laker, University of Pennsylvania, updated 25Mar15

2.6 Reset Design Strategy

0 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 1 1 Stop bits. 11-bit Serial Data format

Sequential Design Basics

Final Project [Tic-Tac-Toe]

Registers and Counters

Lecture 1: Intro to CMOS Circuits

CHAPTER 4: Logic Circuits

Logic Design. Flip Flops, Registers and Counters

DIFFERENTIAL CONDITIONAL CAPTURING FLIP-FLOP TECHNIQUE USED FOR LOW POWER CONSUMPTION IN CLOCKING SCHEME

CHAPTER 4: Logic Circuits

Boolean, 1s and 0s stuff: synthesis, verification, representation This is what happens in the front end of the ASIC design process

ECEN454 Digital Integrated Circuit Design. Sequential Circuits. Sequencing. Output depends on current inputs

R13 SET - 1 '' ''' '' ' '''' Code No: RT21053

55:131 Introduction to VLSI Design Project #1 -- Fall 2009 Counter built from NAND gates, timing Due Date: Friday October 9, 2009.

RS flip-flop using NOR gate

Asynchronous IC Interconnect Network Design and Implementation Using a Standard ASIC Flow

CSE 352 Laboratory Assignment 3

Computer Systems Architecture

Sequential Logic and Clocked Circuits

VeriLab. An introductory lab for using Verilog in digital design (first draft) VeriLab

Dev Bhoomi Institute Of Technology Department of Electronics and Communication Engineering PRACTICAL INSTRUCTION SHEET

CPE/EE 427, CPE 527 VLSI Design I Sequential Circuits. Sequencing

DIGITAL ELECTRONICS MCQs

Find the equivalent decimal value for the given value Other number system to decimal ( Sample)

Random Access Scan. Veeraraghavan Ramamurthy Dept. of Electrical and Computer Engineering Auburn University, Auburn, AL

UNIT-3: SEQUENTIAL LOGIC CIRCUITS

EEC 116 Fall 2011 Lab #5: Pipelined 32b Adder

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING

R13. II B. Tech I Semester Regular Examinations, Jan DIGITAL LOGIC DESIGN (Com. to CSE, IT) PART-A

Flip-Flops and Registers

Testability: Lecture 23 Design for Testability (DFT) Slide 1 of 43

EE 367 Lab Part 1: Sequential Logic

FPGA Design with VHDL

Clocks. Sequential Logic. A clock is a free-running signal with a cycle time.

Experiment 8 Introduction to Latches and Flip-Flops and registers

Digital Systems Laboratory 3 Counters & Registers Time 4 hours

Power Distribution and Clock Design

Lecture 23 Design for Testability (DFT): Full-Scan

problem maximum score 1 28pts 2 10pts 3 10pts 4 15pts 5 14pts 6 12pts 7 11pts total 100pts

Final Exam review: chapter 4 and 5. Supplement 3 and 4

Lecture 11: Sequential Circuit Design

1. Convert the decimal number to binary, octal, and hexadecimal.

MODULAR DIGITAL ELECTRONICS TRAINING SYSTEM

(Refer Slide Time: 2:00)

List of the CMOS 4000 series Dual tri-input NOR Gate and Inverter Quad 2-input NOR gate Dual 4-input NOR gate

Midterm Exam 15 points total. March 28, 2011

STATIC RANDOM-ACCESS MEMORY

Using on-chip Test Pattern Compression for Full Scan SoC Designs

Transcription:

Developing Standard Cells for TSMC 0.25 µm Technology with MOSIS DEEP Rules Dong S. Ha, Jos B. Sulistyo, and Jonathan Perry Virginia Tech VLSI for Telecommunication Laboratory Bradley Department of Electrical and Computer Engineering Virginia Polytechnic Institute and State University Blacksburg, VA 24060, U S A jsulisty@ee.vt.edu, ha@vt.edu, joperry2@vt.edu In this brief technical report, the cells contained in the standard cell library vtvtlib25 are listed. Further, some guidelines for creating new cells for the library are given. I. Cells Contained in the Library The cell library vtvtlib25 is developed and maintained by the VTVT (Virginia Tech VLSI for Telecommunication) Group for the TSMC 0.25 µm technology. The MOSIS DEEP rule (SCN5M) is used. The library contains the cells listed in Table I. Table I. Cells Contained in the Library vtvtlib25 Cell Name Function buf_[1,2,4] Noninverting buffer, drive strength 1, 2, or 4 inv_[1,2,4] Inverter, drive strength 1, 2 or 4 and2_[1,2,4] 2-input AND gate, drive strength 1, 2, or 4 and3_[1,2,4] 3-input AND gate, drive strength 1, 2, or 4 and4_[1,2,4] 4-input AND gate, drive strength 1, 2, or 4 or2_[1,2,4] 2-input OR gate, drive strength 1, 2, or 4 or3_[1,2,4] 3-input OR gate, drive strength 1, 2, or 4 or4_[1,2,4] 4-input OR gate, drive strength 1, 2, or 4 nand2_[1,2,4] 2-input NAND gate, drive strength 1, 2, or 4 nand3_[1,2,4] 3-input NAND gate, drive strength 1, 2, or 4 nand4_[1,2,4] 4-input NAND gate, drive strength 1, 2, or 4 nor2_[1,2,4] 2-input NOR gate, drive strength 1, 2, or 4 nor3_[1,2,4] 3-input NOR gate, drive strength 1, 2, or 4 nor4_[1,2,4] 4-input NOR gate, drive strength 1, 2, or 4 xor2_[1,2] 2-input XOR gate, drive strength 1 or 2 xnor2_[1,2] 2-input XNOR gate, drive strength 1 or 2 mux2_[1,2,4] 2-to-1 multiplexer, drive strength 1, 2, or 4 1

mux3_2 3-to-1 multiplexer, drive strength 2 mux4_2 4-to-1 multiplexer, drive strength 2 ABnorC (ip1*ip2+ip3), drive strength 1 ABorC ip1*ip2+ip3, drive strength 1 ab_or_c_or_d ip1*ip2+ip3+ip4, drive strength 1 Not_ab_or_c_or_d (ip1*ip2+ip3+ip4), drive strength 1 Dec2_4 2 to 4 decoder, drive strength 1 Dec3_8 3 to 8 decoder, drive strength 1 fulladder One-bit ripple-carry adder, drive strength 1 bufzp_2 noninverting tristate buffer, low-enabled, drive strength 2 invzp_[1,2,4] inverting tristate buffer, low-enabled, drive strength 1, 2, or 4 cd_8 clock driver, drive strength 8 cd_12 clock driver, drive strength 12 cd_16 clock driver, drive strength 16 lp_[1,2] high-active D latch, drive strength 1 or 2 Lrp_[1, 2, 4] high-active D latch with asynchronous low-active reset and drive strength 1, 2, or 4 Lrsp_[1, 2, 4] high-active D latch with asynchronous low-active reset and asynchronous high-active set, drive strength 1, 2, or 4 Dp_[1,2,4] rising-edge triggered D flip-flop (with 1, 2, or 4 drive strength) Drp_[1,2,4] rising-edge triggered D flip-flop with asynchronous low-active reset (1, 2, or 4 drive strength) drsp_[1,2,4] rising-edge triggered D flip-flop with asynchronous low-active reset and asynchronous high-active set dksp_1 rising-edge triggered D flip-flop with asynchronous active high set and extra inverted output. dtsp_1 rising-edge triggered D flip-flop with asynchronous active high set input and serial scan input. dtrsp_2 rising-edge triggered D flip-flop with asynchronous low-active reset, asynchronous high-active set, and serial scan input jkrp_2 rising-edge triggered JK flip-flop with asynchronous active-low reset and extra inverted output, drive strength 2. filler filler cell (empty cell with power and ground rails and nwell) Additionally, the complete library also contains layouts of some dummy pads. These dummy pads are not intended for use with actual designs. They were created only for the convenience of creating LEF files. The actual pad cells, particularly the corner pad, are too large to be used easily in LEF file generation using abstract (the LEF file generation tool in the Cadence suite). Here the dummy pad cells are shown to allow for appropriate modifications by the user if needed. Again, these are not the actual layouts of 2

the pads themselves (designed by Tanner Research Corporation), which have to be downloaded from the MOSIS website. 3

II. Recommended Settings and Sizes for Standard Cell Layouts If the user desires to add new cells to the layout library, he or she should follow the design requirements and guidelines that this section provides. This document assumes that the user is already familiar with standard cell design. Here, some of the values used by the library (such as metal track width, routing pitch) are given. LAYOUT EDITOR DEFAULTS: Set your grid (options Display in Cadence, or the e shortcut key) to 1.08 µm min spacing, 7.56 µm major spacing. It is also helpful to turn on the grid lines. 1 grid unit = routing grid = 9λ (1.08 µm) CELL DIMENSIONS: These rules must be followed for the cells to be usable with other cells already in the library, even if they are not required by the DRC kit or by MOSIS rules. TECHNOLOGY: TSMC 0.25µm, MOSIS deep-submicron (SCN5M-DEEP, NCSU_TechLib_tsmc03d) lambda = 0.12 µm DESIGN KIT: Modified version of NCSU kit version 1.2 or later (modified to include MOSIS SCN-DEEP design rules and to implement the wide metal spacing rules). It is believed that the modifications of the CDK files included with this library will also function properly with version 1.1; however, this has not been tested. INTERCELL INTERCONNECTS: metals (1-5) INTRACELL INTERCONNECTS: should be limited to poly, metal1 and metal2 whenever possible. All attempts should be made to route metal2 in the horizontal direction only. Likewise, metal1 should be routed vertically whenever possible. 4

CELL WIDTH: integer multiples of 9λ. Note that the horizontal extension of nwell, nselect, and pselect at the power and ground rails is not considered part of the cell width. CELL HEIGHT: 126λ = 14 routing grid or 15.12 µm. METAL PITCH: metal1 = metal2 = metal3 = metal4 = 9λ; metal5 = 18λ METAL WIDTH: 4λ for all layers VIA METAL ENCLOSURE SIZE: 5 5λ 2, except 7 7λ 2 for m5 over via4 (for all via layers, size = 3 3λ 2 ) METAL OFFSET: 0 for all layers CORE CELL ORIGIN: (0λ, 0λ) for ground pins lower left corner LEFT/RIGHT CELL EDGE TO NEAREST METAL: 9λ to center, 7λ to edge. PREFERRED METAL DIRECTION INSIDE CELL: m1, m3, m5 vertical; m2, m4 horizontal. This rule doe not have to be strictly followed for m1; however it should still be used as a guideline. POWER / GROUND PINS / RAILS: named vdd/vss, 1.32µm = 11λ high. Width, which is defined as cell width, must be integer multiples of 9λ. The y-coordinates of the rails are the topmost/bottom 11λ of the cell: from 115λ to 126λ for vdd and from 0λ to 11λ for vss. SIGNAL PIN NAMING: op for combinational outputs; q or qb for sequential outputs; ip, ip1 ipn or whatever for combinational inputs; ck for clock; s (active high) or sb (active low) set; r or rb reset; sm or smb scan input; ip for D-type latch/flip-flops. Other type of flip-flops: use any reasonable names (e.g. j and k would be good for JK flip-flops). TRANSISTOR SIZES: Length 2λ. Width varies according to drive strength. For lowest drive strength 7λ (n), 14λ(p). For hi-drive-strength, use 14λ (n), 28λ (p), W p /W n =2 always for primitive gates. For 4 drive strength cells, the output stage must be formed 5

from two 2 cells in parallel. An exception to the W p /W n =2 rule is the transmission gate, where W p = W n = 11λ for low drive and 21λ for higher drives. p-transistor n-well HEIGHT: 7.92 µm (66 λ); bottom at y=7.2 µm (60 λ), top at 15.12 µm (126 λ) p-transistor n-well WIDTH: should be just wide enough in the x direction to enclose the p-transistors and well/substrate contacts without design rule violations. SELECT ENCLOSURE OF TRANSISTORS WIDTH: the same width as the power/ground rails (same x coordinates for both left and right edges). SELECT ENCLOSURE OF n-transistors HEIGHT: 2.64 µm (22 λ); lower edge at y=0.96 µm (8 λ), upper at 3.60 µm (30 λ) SELECT ENCLOSURE OF p-transistors HEIGHT: 4.56 µm (38 λ); lower edge at y=7.32 µm (61 λ), upper at 11.88 µm (99 λ) SELECT FOR SUBSTRATE/WELL TIE WIDTH: The same as the width of the power/ground rails (the same x coordinates for left- and right-edges as vdd/vss rails) SELECT FOR p-substrate TIE HEIGHT: 0.96 µm (8 λ); lower edge at y=0 µm (0 λ), upper at 0.96 µm (8 λ) SELECT FOR n-well TIE HEIGHT: 0.96 µm (8 λ); lower edge at y=14.04 µm (117 λ), upper at 15.12 µm (126 λ) ACTIVE ENCLOSURE OF SUBSTRATE/WELL TIE WIDTH: just wide enough in the x direction to enclose the substrate ties without DRC errors ACTIVE ENCLOSURE OF p-substrate TIE HEIGHT: 0.48 µm (4 λ); lower edge at y=0.24 µm (2 λ), upper at 0.72 µm (6 λ) ACTIVE ENCLOSURE OF n-well TIE HEIGHT: 0.48 µm (4 λ); lower edge at y=14.28 µm (119 λ), upper at 14.76 µm (123 λ) POLY ENCLOSURE OF ACTIVE: 0.30-0.36 µm (2.5-3 λ) even if the DRC kit is happy with smaller overlaps. What is poly enclosure (a.k.a gate extension of active ) 6

anyway? See MOSIS rule no.3.3, http://www.mosis.org/technical/designrules/scmos/scmos-poly.html for description. Miscellaneous Rules: Excluding VDD and VSS rails, no metal should be closer than 0.30 µm (2.5 λ) to the edge of the cell. Please try to get as close to 0.30 µm as possible on both sides. For any wide metal traces (other than the power/ground rails) in your design, more space will have to be given. At least 0.72 µm (6 λ) between cell edge and the wide metal trace should be sufficient. Make sure ALL parts in layer via and higher ( via, metal2, via2 and higher) are centered on the grid. This includes any metal line that will function as an I/O. For example, the output of a NAND gate does not need a contact, but the metal line that creates the contact should be centered on the grid Refrain from using metal3 or higher in a cell unless absolutely necessary (in most cases, metal1 and metal2 should be sufficient). Ideal metal spacing is 5λ (0.60 µm) this is edge-to-edge spacing. Example of cell: Figure 1 is a 2-input NAND gate. Its pinout is as follows: vdd = power; vss = ground ip = input; op = output The lower left corner of the vss pin defines the origin for this cell. 7

Figure 1. An example 2-input NAND gate 8