Laboratory 6. - Using Encounter for Automatic Place and Route. By Mulong Li, 2013

Size: px
Start display at page:

Download "Laboratory 6. - Using Encounter for Automatic Place and Route. By Mulong Li, 2013"

Transcription

1 CME 342 (VLSI Circuit Design) Laboratory 6 - Using Encounter for Automatic Place and Route By Mulong Li, 2013 Reference: Digital VLSI Chip Design with Cadence and Synopsys CAD Tools, Erik Brunvand

2 Background knowledge Place and Route: is the process of taking a structural file (Verilog in our case) and making a physical chip from that description. It involves placing the cells on the chip, and routing the wiring connections between those cells. The structural Verilog file (that we generated in Lab5) gives all the information about the circuit that should be assembled. Encounter Digital Implementation (EDI) System: is a Cadence tool for creation of digital integrated circuits. This includes floor planning, power planning, test and place and route. LEF: Library Exchange Format is a specification for representing the basic physical layout information of an integrated circuit in ASCII format. It includes only some of the design rules and abstract view information about the cells. In this lab, we will use some LEF files that contain layout information of the technology, the standard cell library and the IO library. 2

3 1 Getting Started In this lab, we will continue working on that ripple carry adder we synthesized in Lab 5. The optimized netlist of rca will be imported into the Encounter tool, along with the layout information of all standard cells. Then we will put a power ring as the power supply for all the cells in our design, place all the cells and let Encounter to route the connections. 1.1 Cadence Encounter start-up: a) In your home directory, type encounter to start Encounter. Directory ~/cabinet/cme342/encounter/ will be automatically created for you. $ encounter-cme342 b) After a while you should see a warning similar to the one below: encounter: WARNING: The current host architecture (lnx86 32bit) is not compatible encounter: with the selected binary (lnx86 64bit). encounter: To run the lnx86 64bit binary, you must use a 64bit processor encounter: and OS to use that binary. encounter: INFO:.Forcing the bit selection to 32bit. c) Ignore this warning. It just tells you that the default b4bit binary is not available. After a while the GUI pops out. It ll take a few minutes if you open Encounter for the first time. Figure 1.1 3

4 2 Encounter Place and Route 2.1 Importing the Design a) Once the tool is started, you need to read your design files into the tool. Select File -> Import Design and the Design Import window will pop up as shown in Figure 1.2. Figure 2.1 4

5 b) In the Basic tab, choose Verilog for Netlist. Browse to your optimized RCA netlist. It should be under the directory of CME342/synopsys_dc/SYN/NETLIST/ c) Provide the Top Cell name: rca_n4 d) For Technology/Physical Libraries, browse to./encounter/lef and choose all 3 lef files: vst_n18_sc_tsm_c4_tech.lef is the technology file, vst_n18_sc_tsm_c4_stdcell.lef contains all standard library cells, and tpz973g_7lm.lef contains information about IO pads. NOTE: order matters here. Make sure the technology file is the first one. Figure 2.2 e) Since there s no clock in our RCA design, we can leave the Timing Libraries and Timing Constraint File fields blank. f) Switch to Advanced tab, click on Power, and put VDD and VSS in the Power and Ground Nets fields, as shown in Figure 2.3. Figure 2.3 5

6 g) Click Save to save the current settings, so that you can always reload the same settings in the future. Then click OK to finish the Design Import, the Encounter window will now look like Figure 2.4: 2.2 Floorplanning Figure 2.4 Floorplanning is the step where you make decisions about how densely packed the standard cells will be, and how the large pieces of your design will be placed relative to each other. Because there is only one top-level module in the rca adder, this is automatically assumed to cover the entire standard cell area. a) Select Floorplan -> Specify Floorplan to open the Specify Floorplan dialog box (Figure 2.5). In this dialog box you can change various parameters related to the floorplan: 6

7 Figure 2.5 Aspect Ratio: This sets the (rectangular) shape of the cell. An aspect of close to 1 is close to square. An aspect of 0.5 is a rectangle with the vertical edge half as long as the horizontal, and 1.5 is a rectangle with the vertical edge twice the horizontal. This is handy if you re trying to make a subsystem to fit in a larger project. For now, just for fun, we ll change the aspect ratio to 0.3. Note that the tool will adjust this number a little based on the anticipated cell sizes. Core Utilization: This lets the tool know how densely packed the core should be with standard cells. The default is around 70% which leaves room for in place optimization and clock tree synthesis, both of which may add extra cells during their operation. For a large complex design you may even have to reduce the utilization percentage below this. 7

8 Core Margins: These should be set by Core to IO Boundary and are to leave room for the power and ground rings that will be generated around your cell. All of the Core to... values should be set to 8. Note that even though you specify 5, when you apply those values they may change slightly according to Encounter s measurements. b) Keep the other fields default, and click OK. The main Encounter window should look like Figure 2.6. The rows in which cells will be placed are in the center with the little corner diagonals showing how the cells in those rows will be flipped. The dotted line is the outer dimension of the final cell. The power and ground rings will go in the space between the cells and the outer boundary. Figure 2.6 8

9 c) This is a good spot in which to save the current design. There are lots of steps in the process that are not undo-able. It s nice to save the design at various points so that if you want to try something different you can reload the design and try other things. Save the design with File -> Save Design.... Data Type Encounter and File name <filename>.enc. In my case I ll name it rca_n4_fplan.enc so that I can restore to the point where I have a floorplan if I want to start over from this point. Saved designs are restored into the tool using the File-> Restore Design... menu. 2.3 Power Planning a) Now it s time to put the power and ground ring around your circuit, and connect that ring to the rows so that your cells will be connected to power and ground when they re placed in the row. Start with Power -> Power Planning -> Add Ring From this dialog box (Figure 2.7) you can control how the power rings are generated. The fields of interest are Ring Type: The defaults are good here. You should have the Core ring(s) contouring set to Around core boundary. Ring Configuration: You can select the metal layers you want to use for the ring, their width, and their spacing. Make the top and bottom of the ring horizontal metal1, and the right and left vertical metal2 to match our routing protocol. Change the width of each side of the ring to 2.2 and the spacing should be set to Finally, the offset should be changed to center in channel. b) When you click OK you will see the power and ground rings generated around your cell. You can also zoom in and see that the tool has also generated arrays of vias where the wide horizontal and vertical wires meet. c) Now we can connect power to the rows where the cells will be placed. Select Route -> Special Route to route the power wires. Make sure that all your power supplies (VSS and VDD) are listed in the Net(s) field. Other fields don t need to be changed unless you have specific reasons to change them. Click OK and you will see the rows have their power connections made to the ring/stripe grid as seen in Figure 2.8. Zoom in to any of the connections and you ll see that an array of vias has been generated to fill the area of the connection. 9

10 Figure

11 Figure 2.8 d) If check the command terminal, you ll see a number of warnings at this step complaining that there are no standard cells and no block or pad pins to be routed. That s fine, since we haven t placed any cells yet. But our cells will be placed in the rows so that they'll use the power and ground wires. e) After the power rings are created you need to create Global Net Connections. This is done to specify the pins inside the standard cells/blocks that need to connect to the global power nets. Click on Power -> Connect Global Nets. We will first add VDD signal. In the Connect/Pin part of the dialog box, enter VDD. Under Scope, select check button "Apply All" and in the field To Global Net, enter VDD. After selecting these options, click on "Add to List". Repeat the procedure for the ground signal, VSS. Apply and Close. 11

12 Figure 2.9 f) Now is another good time to save the design. This time save it as rca_n4_powerplan.enc. 2.4 Placing the Standard Cells a) Now you want the tool to place the standard cells in your design into that floorplan. Select Place -> Place Standard Cells... Leave the defaults in the dialog box as seen in Figure 2.9. You want to use Run Full Placement and Include Pre-Place Optimization. Figure

13 b) After pressing OK your cells will be placed in the rows of the floorplan. This might take a while for a large design. When it s finished the screen might not look any different. Change to the Physical view (the rightmost design view widget - see Figure 2.10) and you ll see where each of your cells has been placed. Figure 2.11 c) Now save the current design as rca_n4_place.enc. 2.5 Routing a) Now that the cells are placed, since there s no global clock in our design, we can skip the Clock Tree Synthesis (CTS) step and jump to the final routing. Select Route -> NanoRoute -> Route to invoke the router. We ll keep all the settings default here. Of course, you are welcome to play around with these settings to see what happens. b) Click OK and the routing will start. This can take a long time on a large design. When it finishes, check the terminal window. You should see 0 DRC violations and 0 fails. Now the placed and routed design should look like Figure 2.11: 13

14 Figure 2.12 c) Save the routed design as rca_n4_route.enc. 2.6 Adding Filler Cells After the final optimization is complete, you need to fill the gaps in the cell row with filler cells. These are cells in your library that have no active circuits in them, just power and ground wires and NWELL layers. Select Place -> Physical Cell -> Add Filler. Click on Select to select a Cell Name, Add FILL1, close. Clicking OK will fill all the gaps in the rows with filler cells for a final cell layout as seen in Figure You can also zoom around in the layout to see how things look and how they re connected. Figure

15 2.7 Checking the Result Figure 2.14 There are a number of checks you can run on the design in SOC Encounter. a) The first thing you should check is that all the connections specified in your original structural netlist have been made successfully. To check this, use the Verify -> Verify Connectivity menu choice. The defaults as seen in Figure 2.14 are fine. This should return a result in the terminal that says that there are no problems or warnings related to connectivity. If there are, you need to figure out what they are and start over from an appropriate stage of the place and route process to fix them. If there are problems it s likely that routing congestion caused the problem. You could try a new route, a new placement, or go all the way back to a new floorplan with a lower core utilization percentage or more space between rows for routing channels. b) Another check you can make is DRC check on the routing and abstract views. To do this, select Verify -> Verify Geometry. Use default settings. This is not a substitute for a full DRC check in Virtuoso. This check only runs on the routing and abstract views, and has only a subset of the full rules that are checked in Virtuoso. But, if you have errors here, you should try to correct them here before moving on to the next step. You can view the errors with the Violation Browser from the Tools menu. You can use this tool to find each error, get information about the error, and zoom in to the error in the design window. 15

16 Figure

17 Figure 2.16 c) Save the verified design in any name you like. Then we have finished the P&R for our ripple carry adder. 17

18 Exercise: In this exercise, you are asked to place and route the 4 bit comparator you synthesized in Lab5. Follow all the same steps we did for ripple carry adder: importing design, floorplanning, power planning, placing and routing, adding fillers, checking the design. Remember to save your design after each step, in case Linux crashes or you want to undo any step. Report: 1. Final layout view of the verified design 2. Results of Connectivity and Geometry verification 18

Tutorial for Cadence SOC Encounter Place & Route

Tutorial for Cadence SOC Encounter Place & Route Tutorial for Cadence SOC Encounter Place & Route For Encounter RTL-to-GDSII System 13.15 T. Manikas, Southern Methodist University, 3/9/15 Contents 1 Preliminary Setup... 1 1.1 Helpful Hints... 1 2 Starting

More information

Tutorial 2 Automatic Placement & Routing

Tutorial 2 Automatic Placement & Routing Tutorial 2 Automatic Placement & Routing Please follow the instructions found under Setup on the CADTA main page before starting this tutorial. 1.1. Start Encounter Log on to a VLSI server using your EE

More information

Cadence SOC Encounter Tutorial for a logic block using the University Of Utah Standard cell Libraries In ON Semiconductor 0.

Cadence SOC Encounter Tutorial for a logic block using the University Of Utah Standard cell Libraries In ON Semiconductor 0. Cadence SOC Encounter Tutorial for a logic block using the University Of Utah Standard cell Libraries In ON Semiconductor 0.5 µ C5N CMOS 1. Create a folder called encounter inside of your project folder

More information

Tutorial for Encounter

Tutorial for Encounter Tutorial for Encounter STEP 1: Login to the Linux system on Linuxlab server. Start a terminal (the shell prompt). (If you don t know how to login to Linuxlab server, look at here) Click here to open a

More information

EE 330 Laboratory Experiment Number 11

EE 330 Laboratory Experiment Number 11 EE 330 Laboratory Experiment Number 11 Design and Simulation of Digital Circuits using Hardware Description Languages Fall 2017 Contents Purpose:... 3 Background... 3 Part 1: Inverter... 4 1.1 Simulating

More information

ECE425: Introduction to VLSI System Design Machine Problem 3 Due: 11:59pm Friday, Dec. 15 th 2017

ECE425: Introduction to VLSI System Design Machine Problem 3 Due: 11:59pm Friday, Dec. 15 th 2017 ECE425: Introduction to VLSI System Design Machine Problem 3 Due: 11:59pm Friday, Dec. 15 th 2017 In this MP, you will use automated tools to synthesize the controller module from your MP2 project into

More information

CMOS VLSI Design Lab 3: Controller Design and Verification

CMOS VLSI Design Lab 3: Controller Design and Verification CMOS VLSI Design Lab 3: Controller Design and Verification The controller for your MIPS processor is responsible for generating the signals to the datapath to fetch and execute each instruction. It lacks

More information

CMOS VLSI Design Lab 3: Controller Design and Verification

CMOS VLSI Design Lab 3: Controller Design and Verification CMOS VLSI Design Lab 3: Controller Design and Verification The controller for your MIPS processor is responsible for generating the signals to the datapath to fetch and execute each instruction. It lacks

More information

CMOS VLSI Design Lab 3: Controller Design and Verification

CMOS VLSI Design Lab 3: Controller Design and Verification CMOS VLSI Design Lab 3: Controller Design and Verification The controller for your MIPS processor is responsible for generating the signals to the datapath to fetch and execute each instruction. It lacks

More information

Cadence On-Line Document

Cadence On-Line Document Cadence On-Line Document 1 Purpose: Use Cadence On-Line Document to look up command/syntax in SoC Encounter. 2 Cadence On-Line Document An on-line searching system which can be used to inquire about LEF/DEF

More information

EE 330 Laboratory Experiment Number 11 Design and Simulation of Digital Circuits using Hardware Description Languages

EE 330 Laboratory Experiment Number 11 Design and Simulation of Digital Circuits using Hardware Description Languages EE 330 Laboratory Experiment Number 11 Design and Simulation of Digital Circuits using Hardware Description Languages Fall 2015 Purpose: The purpose of this experiment is to develop methods for using Hardware

More information

Physical Placement with Cadence SoCEncounter 7.1

Physical Placement with Cadence SoCEncounter 7.1 Physical Placement with Cadence SoCEncounter 7.1 Joachim Rodrigues Department of Electrical and Information Technology Lund University Lund, Sweden November 2008 Address for correspondence: Joachim Rodrigues

More information

Tutorial I: Cadence Innovus ECE6133: Physical Design Automation of VLSI Systems Georgia Institute of Technology Prof. Sung Kyu Lim

Tutorial I: Cadence Innovus ECE6133: Physical Design Automation of VLSI Systems Georgia Institute of Technology Prof. Sung Kyu Lim Tutorial I: Cadence Innovus ECE6133: Physical Design Automation of VLSI Systems Georgia Institute of Technology Prof. Sung Kyu Lim I. Setup for Cadence Innovus 1. Copy the following files into your working

More information

EE 330 Laboratory Experiment Number 11 Design, Simulation and Layout of Digital Circuits using Hardware Description Languages

EE 330 Laboratory Experiment Number 11 Design, Simulation and Layout of Digital Circuits using Hardware Description Languages EE 330 Laboratory Experiment Number 11 Design, Simulation and Layout of Digital Circuits using Hardware Description Languages Purpose: The purpose of this experiment is to develop methods for using Hardware

More information

ASIC Physical Design Top-Level Chip Layout

ASIC Physical Design Top-Level Chip Layout ASIC Physical Design Top-Level Chip Layout References: M. Smith, Application Specific Integrated Circuits, Chap. 16 Cadence Virtuoso User Manual Top-level IC design process Typically done before individual

More information

Place & Route: Using Silicon Ensemble

Place & Route: Using Silicon Ensemble Place & Route: Using Silicon Ensemble Introduction In a typical digital design flow, hardware description language is used to model a design and verify desired behavior. Once the desired functionality

More information

Abstract Editor (Last updated: Oct. 23, 2008)

Abstract Editor (Last updated: Oct. 23, 2008) Abstract Editor (Last updated: Oct. 23, 2008) Abstract Editor Tutorial This tutorial has been created to discuss all of the steps needed to create an abstract Library Exchange Format (LEF) file for custom

More information

EE115C Digital Electronic Circuits. Tutorial 4: Schematic-driven Layout (Virtuoso XL)

EE115C Digital Electronic Circuits. Tutorial 4: Schematic-driven Layout (Virtuoso XL) EE115C Digital Electronic Circuits Tutorial 4: Schematic-driven Layout (Virtuoso XL) This tutorial will demonstrate schematic-driven layout on the example of a 2-input NAND gate. Simple Layout (that won

More information

UNIVERSITY OF CALIFORNIA College of Engineering Department of Electrical Engineering and Computer Sciences Lab #2: Layout and Simulation

UNIVERSITY OF CALIFORNIA College of Engineering Department of Electrical Engineering and Computer Sciences Lab #2: Layout and Simulation UNIVERSITY OF CALIFORNIA College of Engineering Department of Electrical Engineering and Computer Sciences Lab #2: Layout and Simulation NTU IC541CA 1 Assumed Knowledge This lab assumes use of the Electric

More information

VLSI Lab Tutorial 1. Cadence Virtuoso Schematic Composer Introduction

VLSI Lab Tutorial 1. Cadence Virtuoso Schematic Composer Introduction VLSI Lab Tutorial 1 Cadence Virtuoso Schematic Composer Introduction 1.0 Introduction The purpose of the first lab tutorial is to help you become familiar with the schematic editor, Virtuoso Schematic

More information

EE434 ASIC & Digital Systems. From Layout to SPICE Simulation (Virtuoso, Calibre, HSpice) Spring 2017 Dae Hyun Kim

EE434 ASIC & Digital Systems. From Layout to SPICE Simulation (Virtuoso, Calibre, HSpice) Spring 2017 Dae Hyun Kim EE434 ASIC & Digital Systems From Layout to SPICE Simulation (Virtuoso, Calibre, HSpice) Spring 2017 Dae Hyun Kim daehyun@eecs.wsu.edu 1 Preparation for Lab2 Download the following file into your working

More information

Cadence Virtuoso Layout Connectivity Mark- Net Tutorial

Cadence Virtuoso Layout Connectivity Mark- Net Tutorial Cadence Virtuoso Layout Connectivity Mark- Net Tutorial Digital VLSI Chip Design CAD manual addendum When you re drawing layout, especially of a complex cell, it s sometimes hard to see exactly what your

More information

CS 4120 Hardware Description Languages and Synthesis Homework 6: Introduction to Cadence Silicon Ensemble

CS 4120 Hardware Description Languages and Synthesis Homework 6: Introduction to Cadence Silicon Ensemble CS 4120 Hardware Description Languages and Synthesis Homework 6: Introduction to Cadence Silicon Ensemble 0. Introduction In this homework, you will be introduced to a Place and Route tool called Silicon

More information

Cell-Based IC Physical Design & Verification SOC Encounter. Advisor : 李昆忠 Presenter : 蕭智元

Cell-Based IC Physical Design & Verification SOC Encounter. Advisor : 李昆忠 Presenter : 蕭智元 Cell-Based IC Physical Design & Verification SOC Encounter Advisor : 李昆忠 Presenter : 蕭智元 Reference: SOC Encounter Training Manual, 2007, edited by CIC. Introduction We ll use some EDA tools to transform

More information

ESE 570 Cadence Lab Assignment 2: Introduction to Spectre, Manual Layout Drawing and Post Layout Simulation (PLS)

ESE 570 Cadence Lab Assignment 2: Introduction to Spectre, Manual Layout Drawing and Post Layout Simulation (PLS) ESE 570 Cadence Lab Assignment 2: Introduction to Spectre, Manual Layout Drawing and Post Layout Simulation (PLS) Objective Part A: To become acquainted with Spectre (or HSpice) by simulating an inverter,

More information

Outline. SoC Encounter Flow. Typical Backend Design Flow. Digital IC-Project and Verification. Place and Route. Backend ASIC Design flow

Outline. SoC Encounter Flow. Typical Backend Design Flow. Digital IC-Project and Verification. Place and Route. Backend ASIC Design flow Outline Digital IC-Project and Verification Deepak Dasalukunte Backend ASIC Design flow General steps Input files Floorplanning Placement Clock-synthesis Routing Typical Backend Design Flow SoC Encounter

More information

Using makemem template

Using makemem template Using makemem template V1.2 November 18, 2004 Modified by Erik Brunvand for CS/EE 6710 Nov 2006 This document describes how to set up to use makemem the ROM and SRAM generator. It also gives an example

More information

EECE 285 VLSI Design. Cadence Tutorial EECE 285 VLSI. By: Kevin Dick Co-author: Jeff Kauppila Co-author: Dr. Arthur Witulski

EECE 285 VLSI Design. Cadence Tutorial EECE 285 VLSI. By: Kevin Dick Co-author: Jeff Kauppila Co-author: Dr. Arthur Witulski Cadence Tutorial EECE 285 VLSI By: Kevin Dick Co-author: Jeff Kauppila Co-author: Dr. Arthur Witulski 1 Table of Contents Purpose of Cadence 1) The Purpose of Cadence pg. 4 Linux 1) The Purpose of Linux

More information

Synthesis and APR Tools Tutorial

Synthesis and APR Tools Tutorial Synthesis and APR Tools Tutorial (Last updated: Oct. 26, 2008) Introduction This tutorial will get you familiarized with the design flow of synthesizing and place and routing a Verilog module. All the

More information

CMOS VLSI Design Lab 4: Full Chip Assembly

CMOS VLSI Design Lab 4: Full Chip Assembly CMOS VLSI Design Lab 4: Full Chip Assembly In this final lab, you will assemble and simulate your entire MIPS microprocessor! You will build your top level chip cell by connecting the datapath, aludec,

More information

An overview of standard cell based digital VLSI design

An overview of standard cell based digital VLSI design An overview of standard cell based digital VLSI design Implementation of the first generation AsAP processor Zhiyi Yu and Tinoosh Mohsenin VCL Laboratory UC Davis Outline Overview of standard cellbased

More information

CPE/EE 427, CPE 527, VLSI Design I: Tutorial #4, Standard cell design flow (from verilog to layout, 8-bit accumulator)

CPE/EE 427, CPE 527, VLSI Design I: Tutorial #4, Standard cell design flow (from verilog to layout, 8-bit accumulator) CPE/EE 427, CPE 527, VLSI Design I: Tutorial #4, Standard cell design flow (from verilog to layout, 8-bit accumulator) Joel Wilder, Aleksandar Milenkovic, ECE Dept., The University of Alabama in Huntsville

More information

Place & Route Tutorial #1

Place & Route Tutorial #1 Place & Route Tutorial #1 In this tutorial you will use Synopsys IC Compiler (ICC) to place, route, and analyze the timing and wirelength of two simple designs. This tutorial assumes that you have worked

More information

VLSI Lab Tutorial 3. Virtuoso Layout Editing Introduction

VLSI Lab Tutorial 3. Virtuoso Layout Editing Introduction VLSI Lab Tutorial 3 Virtuoso Layout Editing Introduction 1.0 Introduction The purpose of this lab tutorial is to guide you through the design process in creating a custom IC layout for your CMOS inverter

More information

EE 330 Laboratory 3 Layout, DRC, and LVS Fall 2015

EE 330 Laboratory 3 Layout, DRC, and LVS Fall 2015 EE 330 Laboratory 3 Layout, DRC, and LVS Fall 2015 Contents Objective:... 2 Part 1 Creating a layout... 2 1.1 Run DRC Early and Often... 2 1.2 Create N active and connect the transistors... 3 1.3 Vias...

More information

Creating LEF File. Abstract Generation: Creating LEF Tutorial File Release Date: 01/13/2004. Export GDS:

Creating LEF File. Abstract Generation: Creating LEF Tutorial File Release Date: 01/13/2004. Export GDS: Creating LEF Tutorial 1-1 - Creating LEF File Abstract Generation: Export GDS: Abstract generator comes as a part of the Silicon Ensemble package. As such, it cannot directly read ICFB library databases.

More information

TUTORIAL SESSION Technical Group Hoda Najafi & Sunita Bhide

TUTORIAL SESSION Technical Group Hoda Najafi & Sunita Bhide TUTORIAL SESSION 2014 Technical Group Hoda Najafi & Sunita Bhide SETUP PROCEDURE Start the Altium Designer Software. (Figure 1) Ensure that the Files and Projects tabs are located somewhere on the screen.

More information

EECS 627, Lab Assignment 2

EECS 627, Lab Assignment 2 EECS 627, Lab Assignment 2 1 Introduction In this lab assignment, you will extend the process of designing your multiplier chip. You will add two more blocks (a pseudo-random test pattern generator and

More information

Digital IC- Project 1. Place and Route. Oskar Andersson. Oskar Andersson, EIT, LTH, Digital IC project and Verifica=on

Digital IC- Project 1. Place and Route. Oskar Andersson. Oskar Andersson, EIT, LTH, Digital IC project and Verifica=on Digital IC- Project 1 Oskar Andersson Outline Backend ASIC Design flow (Physical Design) General steps Input files Floorplanning Placement ClockTree- synthesis Rou=ng Typical Backend Design Flow Synthesis

More information

Virtuoso Layout Editor

Virtuoso Layout Editor This tutorial will cover the basic steps involved in using the Cadence layout editor called Virtuoso, extracting layout, and running simulation on the layout. The inverter layout is used as an example

More information

Design rule illustrations for the AMI C5N process can be found at:

Design rule illustrations for the AMI C5N process can be found at: Cadence Tutorial B: Layout, DRC, Extraction, and LVS Created for the MSU VLSI program by Professor A. Mason and the AMSaC lab group. Revised by C Young & Waqar A Qureshi -FS08 Document Contents Introduction

More information

Pipelined MIPS CPU Synthesis and On-Die Representation ECE472 Joseph Crop Stewart Myers

Pipelined MIPS CPU Synthesis and On-Die Representation ECE472 Joseph Crop Stewart Myers Pipelined MIPS CPU Synthesis and On-Die Representation ECE472 Joseph Crop Stewart Myers 2008 Table of Contents Introduction... 3 Steps Taken and Simulation... 3 Pitfalls... 8 Simulated Delay... 9 APPENDIX

More information

An Overview of Standard Cell Based Digital VLSI Design

An Overview of Standard Cell Based Digital VLSI Design An Overview of Standard Cell Based Digital VLSI Design With examples taken from the implementation of the 36-core AsAP1 chip and the 1000-core KiloCore chip Zhiyi Yu, Tinoosh Mohsenin, Aaron Stillmaker,

More information

University of Florida EEL 3701 Dr. Eric M. Schwartz Department of Electrical & Computer Engineering Revision 0 12-Jun-16

University of Florida EEL 3701 Dr. Eric M. Schwartz Department of Electrical & Computer Engineering Revision 0 12-Jun-16 Page 1/14 Quartus Tutorial with Basic Graphical Gate Entry and Simulation Example Problem Given the logic equation Y = A*/B + /C, implement this equation using a two input AND gate, a two input OR gate

More information

CMOS VLSI Design Lab 2: Datapath Design and Verification

CMOS VLSI Design Lab 2: Datapath Design and Verification CMOS VLSI Design Lab 2: Datapath Design and Verification In this lab, you will begin designing an 8-bit MIPS processor. You will first review and simulate a Verilog model of the overall processor. You

More information

AMIS CDNLive Paper: A DFII Based Place and Route Interface

AMIS CDNLive Paper: A DFII Based Place and Route Interface Table of Contents Chapter 1.0 Overview Chapter 2.0 Implementation Chapter 3.0 Digital Integration Form Chapter 4.0 To P&R Tab Chapter 5.0 From P&R Tab Chapter 6.0 Summary 1/17 Introduction Chapter 1: Overview

More information

TUTORIAL II ECE 555 / 755 Updated on September 11 th 2006 CADENCE LAYOUT AND PARASITIC EXTRACTION

TUTORIAL II ECE 555 / 755 Updated on September 11 th 2006 CADENCE LAYOUT AND PARASITIC EXTRACTION TUTORIAL II ECE 555 / 755 Updated on September 11 th 2006 CADENCE LAYOUT AND PARASITIC EXTRACTION After finishing a schematic of your design (Tutorial-I), the next step is creating masks which are for

More information

CPE/EE 427, CPE 527, VLSI Design I: Tutorial #3, Standard cell design flow (from schematic to layout, 8-bit accumulator)

CPE/EE 427, CPE 527, VLSI Design I: Tutorial #3, Standard cell design flow (from schematic to layout, 8-bit accumulator) CPE/EE 427, CPE 527, VLSI Design I: Tutorial #3, Standard cell design flow (from schematic to layout, 8-bit accumulator) Joel Wilder, Aleksandar Milenkovic, ECE Dept., The University of Alabama in Huntsville

More information

EE183 LAB TUTORIAL. Introduction. Projects. Design Entry

EE183 LAB TUTORIAL. Introduction. Projects. Design Entry EE183 LAB TUTORIAL Introduction You will be using several CAD tools to implement your designs in EE183. The purpose of this lab tutorial is to introduce you to the tools that you will be using, Xilinx

More information

Synopsys Custom Designer Tutorial for a chip integra7on using the University of Utah Standard Cell Libraries In ON Semiconductor 0.

Synopsys Custom Designer Tutorial for a chip integra7on using the University of Utah Standard Cell Libraries In ON Semiconductor 0. Synopsys Custom Designer Tutorial for a chip integra7on using the University of Utah Standard Cell Libraries In ON Semiconductor 0.5u C5 CMOS Version 6.0 Overview This tutorial will take you through the

More information

and 32 bit for 32 bit. If you don t pay attention to this, there will be unexpected behavior in the ISE software and thing may not work properly!

and 32 bit for 32 bit. If you don t pay attention to this, there will be unexpected behavior in the ISE software and thing may not work properly! This tutorial will show you how to: Part I: Set up a new project in ISE 14.7 Part II: Implement a function using Schematics Part III: Simulate the schematic circuit using ISim Part IV: Constraint, Synthesize,

More information

An Automated System for Checking Lithography Friendliness of Standard Cells

An Automated System for Checking Lithography Friendliness of Standard Cells An Automated System for Checking Lithography Friendliness of Standard Cells I-Lun Tseng, Senior Member, IEEE, Yongfu Li, Senior Member, IEEE, Valerio Perez, Vikas Tripathi, Zhao Chuan Lee, and Jonathan

More information

EEC 116 Fall 2011 Lab #1 Cadence Schematic Capture and Layout Tutorial

EEC 116 Fall 2011 Lab #1 Cadence Schematic Capture and Layout Tutorial EEC 116 Fall 2011 Lab #1 Cadence Schematic Capture and Layout Tutorial Dept. of Electrical and Computer Engineering University of California, Davis September 26, 2011 Reading: Rabaey Chapters 1, 2, A,

More information

ECE471/571 Energy Efficient VLSI Design Project 2 Cadence Setup and Creation of an Inverter Due Date 11:30 am on Friday, February 2 nd, 2018

ECE471/571 Energy Efficient VLSI Design Project 2 Cadence Setup and Creation of an Inverter Due Date 11:30 am on Friday, February 2 nd, 2018 ECE471/571 Energy Efficient VLSI Design Project 2 Cadence Setup and Creation of an Inverter Due Date 11:30 am on Friday, February 2 nd, 2018 Introduction This project will first walk you through the setup

More information

Prepared by Dr. Ulkuhan Guler GT-Bionics Lab Georgia Institute of Technology

Prepared by Dr. Ulkuhan Guler GT-Bionics Lab Georgia Institute of Technology Prepared by Dr. Ulkuhan Guler GT-Bionics Lab Georgia Institute of Technology OUTLINE Introduction Mapping for Schematic and Layout Connectivity Generate Layout from Schematic Connectivity Some Useful Features

More information

Logic Synthesis. Logic Synthesis. Gate-Level Optimization. Logic Synthesis Flow. Logic Synthesis. = Translation+ Optimization+ Mapping

Logic Synthesis. Logic Synthesis. Gate-Level Optimization. Logic Synthesis Flow. Logic Synthesis. = Translation+ Optimization+ Mapping Logic Synthesis Logic Synthesis = Translation+ Optimization+ Mapping Logic Synthesis 2 Gate-Level Optimization Logic Synthesis Flow 3 4 Design Compiler Procedure Logic Synthesis Input/Output 5 6 Design

More information

Part B. Dengxue Yan Washington University in St. Louis

Part B. Dengxue Yan Washington University in St. Louis Tools Tutorials Part B Dengxue Yan Washington University in St. Louis Tools mainly used in this class Synopsys VCS Simulation Synopsys Design Compiler Generate gate-level netlist Cadence Encounter placing

More information

UNIVERSITY OF WATERLOO

UNIVERSITY OF WATERLOO UNIVERSITY OF WATERLOO UW ASIC DESIGN TEAM: Cadence Tutorial Description: Part I: Layout & DRC of a CMOS inverter. Part II: Extraction & LVS of a CMOS inverter. Part III: Post-Layout Simulation. The Cadence

More information

Creating Verilog Tutorial Netlist Release Date: 01/13/2005(Version 2)

Creating Verilog Tutorial Netlist Release Date: 01/13/2005(Version 2) Creating Verilog Tutorial 2-1 - Creating a verilog netlist for a schematic: The verilog netlist is necessary for automatic layout (placement and routing) tools. It contains information about the I/O pins

More information

Exercise 1. Section 2. Working in Capture

Exercise 1. Section 2. Working in Capture Exercise 1 Section 1. Introduction In this exercise, a simple circuit will be drawn in OrCAD Capture and a netlist file will be generated. Then the netlist file will be read into OrCAD Layout. In Layout,

More information

Laboratory 5. - Using Design Compiler for Synthesis. By Mulong Li, 2013

Laboratory 5. - Using Design Compiler for Synthesis. By Mulong Li, 2013 CME 342 (VLSI Circuit Design) Laboratory 5 - Using Design Compiler for Synthesis By Mulong Li, 2013 Reference: http://www.tkt.cs.tut.fi/tools/public/tutorials/synopsys/design_compiler/gsdc.html Background

More information

EE 330 Laboratory 3 Layout, DRC, and LVS

EE 330 Laboratory 3 Layout, DRC, and LVS EE 330 Laboratory 3 Layout, DRC, and LVS Spring 2018 Contents Objective:... 2 Part 1 creating a layout... 2 1.1 Run DRC... 2 1.2 Stick Diagram to Physical Layer... 3 1.3 Bulk Connections... 3 1.4 Pins...

More information

Lesson 12: Preparing for Post Processing

Lesson 12: Preparing for Post Processing 12 Lesson 12: Preparing for Post Processing Learning Objectives In this lesson you will: Rename reference designators on the board design Backannotate changes made in the OrCAD and Allegro PCB Editor to

More information

Cadence Tutorial 2: Layout, DRC/LVS and Circuit Simulation with Extracted Parasitics

Cadence Tutorial 2: Layout, DRC/LVS and Circuit Simulation with Extracted Parasitics Cadence Tutorial 2: Layout, DRC/LVS and Circuit Simulation with Extracted Parasitics Introduction This tutorial describes how to generate a mask layout in the Cadence Virtuoso Layout Editor. Use of DIVA

More information

Eliminating Routing Congestion Issues with Logic Synthesis

Eliminating Routing Congestion Issues with Logic Synthesis Eliminating Routing Congestion Issues with Logic Synthesis By Mike Clarke, Diego Hammerschlag, Matt Rardon, and Ankush Sood Routing congestion, which results when too many routes need to go through an

More information

EECS 627, Lab Assignment 3

EECS 627, Lab Assignment 3 EECS 627, Lab Assignment 3 1 Introduction In this lab assignment, we will use Cadence ICFB and Calibre to become familiar with the process of DRC/LVS checks on a design. So far, we have placed and routed

More information

The IIT standard cell library Version 2.1

The IIT standard cell library Version 2.1 The IIT standard cell library Version 2.1 Highlights - Support for AMI 0.35um library, including pads - Added Primetime and Pathmill support to IIT ASIC Flow - Support for stacked vias (for Virtuoso and

More information

Select the technology library: NCSU_TechLib_ami06, then press OK.

Select the technology library: NCSU_TechLib_ami06, then press OK. ECE 126 Inverter Tutorial: Schematic & Symbol Creation Created for GWU by Anis Nurashikin Nordin & Thomas Farmer Tutorial adapted from: http://www.ee.ttu.edu/ee/cadence/commondirectory/final%20tutorials/digitalcircuitsimulationusingvirtuoso.doc

More information

DRC and LVS checks using Cadence Virtuoso Version 3.0

DRC and LVS checks using Cadence Virtuoso Version 3.0 DRC and LVS checks using Cadence Virtuoso Version 3.0 Start virtuoso l l Open a virtuoso session in the directory which contains the required cds.lib and lib.def files. Command : virtuoso & Open the layout

More information

Lesson 5: Board Design Files

Lesson 5: Board Design Files 5 Lesson 5: Board Design Files Learning Objectives In this lesson you will: Use the Mechanical Symbol Editor to create a mechanical board symbol Use the PCB Design Editor to create a master board design

More information

EDA-BASED DESIGN PRACTICAL LABORATORY SESSION No. 3

EDA-BASED DESIGN PRACTICAL LABORATORY SESSION No. 3 LABORATOIRE DE SYSTEMES MICROELECTRONIQUES EPFL STI IMM LSM ELD Station nº 11 CH-1015 Lausanne Téléphone : Fax : E-mail : Site web : +4121 693 6955 +4121 693 6959 lsm@epfl.ch lsm.epfl.ch EDA-BASED DESIGN

More information

EEC 116 Fall 2011 Lab #3: Digital Simulation Tutorial

EEC 116 Fall 2011 Lab #3: Digital Simulation Tutorial EEC 116 Fall 2011 Lab #3: Digital Simulation Tutorial Dept. of Electrical and Computer Engineering University of California, Davis Issued: October 10, 2011 Due: October 19, 2011, 4PM Reading: Rabaey Insert

More information

Lab 1: FPGA Physical Layout

Lab 1: FPGA Physical Layout Lab 1: FPGA Physical Layout University of California, Berkeley Department of Electrical Engineering and Computer Sciences EECS150 Components and Design Techniques for Digital Systems John Wawrzynek, James

More information

EEM216A Design of VLSI Circuits and Systems Fall To start physical synthesis, you will need to source and launch IC Compiler.

EEM216A Design of VLSI Circuits and Systems Fall To start physical synthesis, you will need to source and launch IC Compiler. EEM216A Design of VLSI Circuits and Systems Fall 2012 Prof. Dejan Marković IC Compiler Tutorial Launching IC Compiler To start physical synthesis, you will need to source and launch IC Compiler. tcsh source

More information

ECE 425: Introduction to VLSI System Design Machine Problem 0 Due: Friday 11:59pm, Sep. 15th, 2017

ECE 425: Introduction to VLSI System Design Machine Problem 0 Due: Friday 11:59pm, Sep. 15th, 2017 ECE 425: Introduction to VLSI System Design Machine Problem 0 Due: Friday 11:59pm, Sep. 15th, 2017 You will spend most of your lab time using the Virtuoso design tools from Cadence Design Systems. Virtuoso

More information

PrimeTime: Introduction to Static Timing Analysis Workshop

PrimeTime: Introduction to Static Timing Analysis Workshop i-1 PrimeTime: Introduction to Static Timing Analysis Workshop Synopsys Customer Education Services 2002 Synopsys, Inc. All Rights Reserved PrimeTime: Introduction to Static 34000-000-S16 Timing Analysis

More information

Another view of the standard cells called the abstract view needs to generated

Another view of the standard cells called the abstract view needs to generated Abstract Generation Place and route tools do not require the full cell layout Another view of the standard cells called the abstract view needs to generated The abstract view provides information like:

More information

C Allegro Package Designer Flows

C Allegro Package Designer Flows 1 Allegro User Guide: Getting Started with Physical Design Product Version 16.6 October 2012 C Allegro Package Designer Flows This appendix presents design flows that illustrate the use of the Allegro

More information

Introduction to CMOS VLSI Design (E158) Lab 4: Controller Design

Introduction to CMOS VLSI Design (E158) Lab 4: Controller Design Harris Introduction to CMOS VLSI Design (E158) Lab 4: Controller Design The controller for your MIPS processor is responsible for generating the signals to the datapath to fetch and execute each instruction.

More information

Chapter 7 Agilent Interface Tutorial

Chapter 7 Agilent Interface Tutorial Chapter 7 Agilent Interface Tutorial Chapter 7 Agilent Interface Tutorial This tutorial provides you with an overview of the basic use of the Agilent Interface. For a detailed discussion of the Agilent

More information

CPE/EE 427, CPE 527, VLSI Design I: Tutorial #3, Standard cell design flow (from schematic to layout, 8-bit accumulator)

CPE/EE 427, CPE 527, VLSI Design I: Tutorial #3, Standard cell design flow (from schematic to layout, 8-bit accumulator) CPE/EE 427, CPE 527, VLSI Design I: Tutorial #3, Standard cell design flow (from schematic to layout, 8-bit accumulator) Joel Wilder, Aleksandar Milenkovic, ECE Dept., The University of Alabama in Huntsville

More information

Tutorial on Quartus II Introduction Using Verilog Code

Tutorial on Quartus II Introduction Using Verilog Code Tutorial on Quartus II Introduction Using Verilog Code (Version 15) 1 Introduction This tutorial presents an introduction to the Quartus II CAD system. It gives a general overview of a typical CAD flow

More information

Tutorial: Working with the Xilinx tools 14.4

Tutorial: Working with the Xilinx tools 14.4 Tutorial: Working with the Xilinx tools 14.4 This tutorial will show you how to: Part I: Set up a new project in ISE Part II: Implement a function using Schematics Part III: Implement a function using

More information

HOMEWORK 9 CMPEN 411 Due: 4/12/ :30pm

HOMEWORK 9 CMPEN 411 Due: 4/12/ :30pm HOMEWORK 9 CMPEN 411 Due: 4/12/2016 11:30pm Learning Objective Complete the full 8 bit RISC microprocessor chip design by placing the processor core design into the 40 pin 'tiny' chip pad frame. Do verify

More information

Cell-Based Design Flow. TA : 吳廸優

Cell-Based Design Flow. TA : 吳廸優 Cell-Based Design Flow TA : 吳廸優 dywu@viplab.cs.nctu.edu.tw 1 Outline Overview Design Flow Stage 1 RTL Development Synthesis Gate Level Simulation Design Flow Stage 2 Placement and Routing Post Layout Simulation

More information

A Tutorial on Using the Cadence Virtuoso Editor to create a CMOS Inverter with CMOSIS5 Technology

A Tutorial on Using the Cadence Virtuoso Editor to create a CMOS Inverter with CMOSIS5 Technology A Tutorial on Using the Cadence Virtuoso Editor to create a CMOS Inverter with CMOSIS Technology Developed by Ted Obuchowicz VLSI/CAD Specialist, Dept. of Electrical and Computer Engineering Concordia

More information

Using the ispxpga Floorplanner

Using the ispxpga Floorplanner Using the ispxpga Floorplanner Table of Contents USING THE ISPXPGA FLOORPLANNER...3 Task 1: Open the Design...4 Task 2: Open a Floorplanner Design File...5 Task 3: Tour the Graphical User Interface - The

More information

MAGIC TUTORIAL. Getting Started: Background Info: RLW 10/15/98 3:12 PM

MAGIC TUTORIAL. Getting Started: Background Info: RLW 10/15/98 3:12 PM MAGIC TUTORIAL Getting Started: Login to one of the workstations located in ECEE 253 using login name iclab. There is no password so just hit [enter]. The local directory on each machine is /home/sp98/iclab.

More information

ANALOG MICROELECTRONICS ( A)

ANALOG MICROELECTRONICS ( A) ANALOG MICROELECTRONICS (304-534A) IBM 130 nm CMOS Technology An Introduction to Cadence Virtuoso Layout Tool and the Analog Simulation Environment Prepared By - Azhar A. Chowdhury Updated by Ming Yang

More information

Chapter 4 Determining Cell Size

Chapter 4 Determining Cell Size Chapter 4 Determining Cell Size Chapter 4 Determining Cell Size The third tutorial is designed to give you a demonstration in using the Cell Size Calculator to obtain the optimal cell size for your circuit

More information

Start Active-HDL. Create a new workspace TUTORIAL #1 CREATING AND SIMULATING SIMPLE SCHEMATICS

Start Active-HDL. Create a new workspace TUTORIAL #1 CREATING AND SIMULATING SIMPLE SCHEMATICS Introduction to Active-HDL TUTORIAL #1 CREATING AND SIMULATING SIMPLE SCHEMATICS This tutorial will introduce the tools and techniques necessary to design a basic schematic. The goal of this tutorial is

More information

Cadence IC Design Manual

Cadence IC Design Manual Cadence IC Design Manual For EE5518 ZHENG Huan Qun Lin Long Yang Revised on May 2017 Department of Electrical & Computer Engineering National University of Singapore 1 P age Contents 1 INTRODUCTION...

More information

Lesson 9: Advanced Placement Techniques

Lesson 9: Advanced Placement Techniques 9 Lesson 9: Advanced Placement Techniques Learning Objectives In this lesson you will: Turn ratsnests on and off to selectively place components Use interactive swapping for pins and gates Apply advanced

More information

Cadence Tutorial A: Schematic Entry and Functional Simulation Created for the MSU VLSI program by Andrew Mason and the AMSaC lab group.

Cadence Tutorial A: Schematic Entry and Functional Simulation Created for the MSU VLSI program by Andrew Mason and the AMSaC lab group. Cadence Tutorial A: Schematic Entry and Functional Simulation Created for the MSU VLSI program by Andrew Mason and the AMSaC lab group. Revision Notes: Aug. 2003 update and edit A. Mason add intro/revision/contents

More information

University of Kansas EECS Circuit Board Fabrication Tutorial for 212 Lab

University of Kansas EECS Circuit Board Fabrication Tutorial for 212 Lab University of Kansas EECS Circuit Board Fabrication Tutorial for 212 Lab Preparing For Export... 1 Assigning Footprints... 1 Recommended Footprints... 2 No Connects... 3 Design Rules Check... 3 Create

More information

Virtuoso Custom Design Platform GXL. Open Database. PDKs. Constraint Management. Customer IP

Virtuoso Custom Design Platform GXL. Open Database. PDKs. Constraint Management. Customer IP Virtuoso Custom Design Platform GL The Cadence Virtuoso custom design platform is the industry s leading design system for complete front-to-back analog, RF, mixed-signal, and custom digital design. The

More information

Name EGR 2131 Lab #6 Number Representation and Arithmetic Circuits

Name EGR 2131 Lab #6 Number Representation and Arithmetic Circuits Name EGR 2131 Lab #6 Number Representation and Arithmetic Circuits Equipment and Components Quartus software and Altera DE2-115 board PART 1: Number Representation in Microsoft Calculator. First, let s

More information

Prerequisites for Rou4ng

Prerequisites for Rou4ng Basic Zroute Flow Prerequisites for Rou4ng Library requirements Zroute gets all of the design rule informa4on from the technology file; therefore, you must ensure that all design rules are defined in the

More information

Cadence Tutorial A: Schematic Entry and Functional Simulation Created for the MSU VLSI program by Professor A. Mason and the AMSaC lab group.

Cadence Tutorial A: Schematic Entry and Functional Simulation Created for the MSU VLSI program by Professor A. Mason and the AMSaC lab group. Cadence Tutorial A: Schematic Entry and Functional Simulation Created for the MSU VLSI program by Professor A. Mason and the AMSaC lab group. Revision Notes: Jan. 2006 Updated for use with spectre simulator

More information

PART 7. Formatting Pages

PART 7. Formatting Pages PART 7 Formatting Pages In the preceding part, you learned how to format characters and paragraphs. In this part, you learn how to apply formatting that affects entire pages. You ll start with changing

More information