CS/EE 6710 Digital VLSI Design Tutorial on Cadence to Synopsys Interface (CSI)

Size: px
Start display at page:

Download "CS/EE 6710 Digital VLSI Design Tutorial on Cadence to Synopsys Interface (CSI)"

Transcription

1 CS/EE 6710 Digital VLSI Design Tutorial on Cadence to Synopsys Interface (CSI) This tutorial walks you through the Cadence to Synopsys Interface (CSI). This interface lets you take a schematic from composer and use it to produce a structural netlist that you can use either as input to Synopsys synthesis, or for direct place and route using SOC Encounter. A structural Verilog netlist is Verilog code that contains nothing but instances of cells from a library (like UofU_Digital_v1_2 for example). That is, there are no behavioral elements left in the Verilog code. You can get a netlist like this from Synopsys synthesis, but if you want to describe your circuit using a schematic, then you need something like this to convert the schematic to a structural netlist. Once you have a structural netlist you can use it for place and route using SOC Encounter, but you can also use the structural netlist as input to Synopsys. You can use this netlist together with other behavioral Verilog code and have Synopsys synthesize the whole thing together, for example. You can also have Synopsys read the structural netlist and analyze it without running synthesis. This will allow you to take a schematic and use Synopsys timing analysis to see what the worst-case path is. You can do this by reading the Verilog into Synopsys and NOT compiling that code (i.e. no synthesis), but instead simply write out the report which will give you the worst-case timing and the power estimates. Before you start you need to consider how this netlisting process will work. Basically it will take the components in your schematic and convert them into module instantiations in the Verilog code. How far down in the hierarchy should the netlisting process look? Should it stop at the top level? Should it stop at your standard cells? Should it go all the way down to transistors? Each of these answers makes sense in certain situations. Netlisting all the way to transistors, for example, makes a lot of sense if you re simulating with Verilog-XL. This will give you a transistor-switch level of simulation. However, if you re netlisting so that you can use SOC Encounter to place and route the circuits, or just to have Synopsys analyze your netlist, you need to stop at the level of the standard cells from the UofU_Digital_v1_2 library (or whatever library you re using). That is, the macro definitions in the.lef file are the ones that SOC Encounter knows about. So, you should netlist to that level, but no further. In order to do this, you need to organize your cell library so that the netlister can tell when it s the right time to stop descending into the hierarchy. The easiest way to do this is to change the schematic views in your standard cell library to be a different view. This is similar to the trick used to provide different timing possibilities in the Verilog Timing Tutorial. The bottom line is that if you re going to use the CSI your standard cell schematic views need to be named something else (i.e. not schematic ) so that the netlister can tell when to stop by looking for that view instead of schematic. I recommend using cmos_sch as the view name. So, using the library manager (if you haven t already done this for 1

2 timing reasons), change the view name of all your standard cells (the ones in the.lef file) to be cmos_sch instead of schematic. For this example I ll use the UofU_Example library of cells to create a simple schematic. The UofU_Example cells all have cmos_sch views instead of schematic views. The circuit is nonsense. It does nothing interesting. It s just a random collection of cells from the UofU_Example library that will be used to demonstrate how the CSI works. The circuit looks like this: Now I ll invoke the CSI using Tools -> Design Synthesis -> CSI from the Composer menu. The CSI Initialization dialog box pops up with the library, cell, and view already filled in. The only thing you can change (and you don t need to change it) is the run directory. 2

3 This doesn t actually do anything yet. All it does is add some new CSI-related menus to the Composer menu bar. The first thing you need to do is select Session -> Setup -> CSI to get the CSI Options dialog box. Make sure that it s using VerilogHDL as the Netlist Format. Now you need to decide whether you are exporting this structural netlist for the purpose of using it in SOC Encounter for place and route, or whether you re extorting it for use in a Verilog simulator. Choose Session -> Setup -> Verilog Netlister to see the Verilog Netlist Options. The View List in this dialog box is a list of the views that will be exported in the netlisting process. Notice that schematic is on the list. This means that schematics will be expanded during the netlisting. Also notice that behavioral is also on the list which means that any behavioral views will also be netlisted. If you leave the View List as is you will get a structural file that has all the behavioral views of the UofU_Example cells followed by a module that contains the cells in the schematic. This would be great if you were planning on taking this Verilog file and putting it directly into a different Verilog simulator (like ModelSim, for example) because it would not only 3

4 have the Verilog for the schematic, it would also have the behaviors of all the cells so it would simulate correctly. But, in our case, all we want is the structural view the includes the cells in our UofU_Example library (the ones that SOC Encounter knows about). So, we want to remove behavioral from the View List. This way the netlister will not explore those views and we ll be left with only the standard cells in our structural view. The View list is the list of views that will be opened while netlisting, and the Stop list is the list of views that will cause the netlisting process to stop. Notice that symbol is on the Stop list. This means that the first time the process encounters a symbol view it will stop. This is another way that the process knows when to stop traversing the hierarchy and when to output something to the generated netlist. It seems to work fine if you include cmos_sch on the Stop list, but it also seems to do the same thing without cmos_sch on the Stop list. If you want to make CSI do something different you may have to play with the views on these two lists. But, as shown above, CSI will generate a netlist that includes references to your hierarchical circuit, and stopping at the library cells, which is what you want. Now you can select Run->Export Design to export the schematic as a structural Verilog netlist. This netlist will show up as a file called netlist in the CSI run directory. This run directory will be dci.run1 unless you changed it. The structural Verilog for this example schematic looks like this: lab3-12:~/ic_cad/cadence/dci.run1> more netlist // Verilog netlist of // "test_csi" // HDL models 4

5 // End HDL models // Library - test_sedsm, Cell test_csi, View - schematic // LAST TIME SAVED: Nov 29 15:45: // NETLIST TIME: Nov 29 16:01: `timescale 1ns / 100ps module cdsmodule_1 ( y, a, b, clk, clr ); output y; input a, b, clk, clr; // List of primary aliased buses inv I6 (.Y(net6),.A(net12)); nand2 I7 (.Y(y),.B(net18),.A(net6)); nand2 I5 (.Y(net11),.B(net12),.A(b)); nor2 I4 (.Y(net14),.B(net17),.A(a)); mux2 I3 (.Y(net17),.B(net18),.A(b),.S(a)); dff I2 (.G(clk),.D(net11),.CLR(clr),.Q(net18)); dff I1 (.G(clk),.D(net14),.CLR(clr),.Q(net12)); endmodule You can see that the module named cdsmodule_1 is a structural description of exactly the cells that were included in the schematic. I could now take this structural Verilog file, along with the UofU_Example.lef and UofU_Example.v files, and use SOC Encounter to place and route this circuit. I m going to edit this netlist file so that the macro I m interested in is renamed test_csi (which is the name of the schematic that it came from). If I do this, I end up with a placed and routed circuit that looks like this: 5

6 As you can see, this circuit contains the cells from the schematic, but now in placed and routed form. This cell passes DRC and LVS compared to the original schematic that we started with. I can also take this schematic that was generated using CSI, read it into Synopsys, and have Synopsys re-compile it (i.e. have Synopsys optimize the circuit). Or, I can read it in and NOT compile it, but just have Synopsys do timing analysis to determine the worstcase timing through the circuit. In this case you would read the Verilog file into Synopsys using dc-shell, and do every step EXCEPT the compile step. For this example, because I m using the UofU_Example library, I ll use the following parameters for the synthesis, and the following synthesis commands (note that the compile step has been commented out). If you re using a different library you ll have to modify the Timing and Loading Information. 6

7 # * Once you've modified things to your project, invoke with: # * # * syn-dc -f syn-script # * # * # This script assumes that the following variables are defined # in the.synopsys_dc.setup file. You should make sure that # your.synopsys_dc.setup file is configured for your # cell library! # # SynopsysInstall = path to synopsys installation directory # symbol_library = logic symbols for making schematics # # The search_path, target_library, synthetic_library, and link_library # variables are set in.synopsys_dc.setup. # below are parameters that you will want to set for each design # list of all HDL files in the design set myfiles [list test_csi.v] set fileformat verilog ;# verilog or VHDL set basename test_csi ;# Top-level module name set myclk clk ;# The name of your clock set virtual 0 ;# 1 if virtual clock, 0 if real clock # Timing and loading information set myperiod_ns 1 ;# desired clock period (sets speed goal) (1ns = 1GHz) set myindelay_ns 0.1 ;# delay from clock to inputs valid set myoutdelay_ns 0.1 ;# delay from clock to output valid set myinputbuf inv ;# name of cell driving the inputs (4x inverter) set myloadlibrary UofU_Example ;# name of library the cell comes from set myloadpin A ;# name of pin that the outputs drive # Control the writing of result files set runname struct ;# Name appended to output files # the following control which output files you want. They # should be set to 1 if you want the file, 0 if not set write_v 1 ;# compiled structural Verilog file set write_db 0 ;# compiled file in db format (obsolete!) set write_ddc 1 ;# compiled file in ddc format (XG-mode) set write_sdf 0 ;# sdf file for back-annotated timing sim set write_sdc 0 ;# sdc constraint file for place and route set write_rep 1 ;# report file from compilation 7

8 set write_pow 1 ;# report file for power estimate #********************************************************* #* below here shouldn't need to be changed... * #********************************************************* # analyze and elaborate the files analyze -format $fileformat -lib WORK $myfiles elaborate $basename -lib WORK -update current_design $basename # The link command makes sure that all the required design # parts are linked together. # The uniquify command makes unique copies of replicated # modules. link uniquify # now you can create clocks for the design # and set other constraints if { $virtual == 0 { create_clock -period $myperiod_ns $myclk else { create_clock -period $myperiod_ns -name $myclk # Set the driving cell for all inputs except the clock # The clock has infinte drive by default. This is usually # what you want for synthesis because you will use other # tools (like SOC Encounter) to build the clock tree # (or define it by hand). if { $virtual == 0 { set_driving_cell -library $myloadlibrary -lib_cell $myinputbuf [all_inputs] \ else { set_driving_cell -library $myloadlibrary -lib_cell $myinputbuf \ [remove_from_collection [all_inputs] $myclk] # set the input and output delay relative to myclk if { $virtual == 0 { set_input_delay $myindelay_ns -clock $myclk [all_inputs] \ else { set_input_delay $myindelay_ns -clock $myclk \ [remove_from_collection [all_inputs] $myclk] set_output_delay $myoutdelay_ns -clock $myclk [all_outputs] 8

9 # set the load of the circuit outputs in terms of the load # of the next cell that they will drive, also try to fix # hold time issues set_load [load_of [format "%s%s%s%s%s" $myloadlibrary "/" $myinputbuf "/" $myloadpin]] [all_outputs] set_fix_hold $myclk # This command will fix the problem of having # assign statements left in your structural file. # But, it will insert pairs of inverters for feedthroughs! set_fix_multiple_port_nets -all -buffer_constants # Note that for this example I only want timing analysis, so I ve commented out the # compile step # compile_ultra # check_design report_constraint -all_violators #************************************************************ #* now write out the results * #************************************************************ set filebase [format "%s%s" [format "%s%s" $basename "_"] $runname] # structural (synthesized) file as verilog if { $write_v == 1 { set filename [format "%s%s" $filebase ".v"] redirect change_names \ { change_names -rules verilog -hierarchy -verbose write -format verilog -hierarchy -output $filename # write out the sdf file for back-annotated verilog sim # This file can be large! if { $write_sdf == 1 { set filename [format "%s%s" $filebase ".sdf"] write_sdf -version 1.0 $filename # this is the timing constraints file generated from the # conditions above - used in the place and route program if { $write_sdc == 1 { set filename [format "%s%s" $filebase ".sdc"] 9

10 write_sdc $filename # synopsys database format in case you want to read this # synthesized result back in to synopsys later (Obsolete db format) if { $write_db == 1 { set filename [format "%s%s" $filebase ".db"] write -format db -hierarchy -o $filename # synopsys database format in case you want to read this # synthesized result back in to synopsys later in XG mode (ddc format) if { $write_ddc == 1 { set filename [format "%s%s" $filebase ".ddc"] write -format ddc -hierarchy -o $filename # report on the results from synthesis # note that > makes a new file and >> appends to a file if { $write_rep == 1 { set filename [format "%s%s" $filebase ".rep"] redirect $filename { report_timing redirect -append $filename { report_area # report the power estimate from synthesis. if { $write_pow == 1 { set filename [format "%s%s" $filebase ".pow"] redirect $filename { report_power quit After running Synopsys with this script, I get the following report file. This tells me that the worst-case timing path through this circuit is 1.52ns, and also how many cells and how much area the circuit used. **************************************** Report : timing -path full -delay max -max_paths 1 Design : test_csi Version: Z SP4 Date : Tue Apr 21 11:07: **************************************** 10

11 Operating Conditions: typical Library: UofU_Example Wire Load Model Mode: enclosed 1 Startpoint: I2 (rising edge-triggered flip-flop clocked by clk) Endpoint: I1 (rising edge-triggered flip-flop clocked by clk) Path Group: clk Path Type: max Des/Clust/Port Wire Load Model Library test_csi 5k UofU_Example Point Incr Path clock clk (rise edge) clock network delay (ideal) I2/G (dff) r I2/Q (dff) f I3/Y (mux2) f I4/Y (nor2) r I1/D (dff) r data arrival time 1.52 clock clk (rise edge) clock network delay (ideal) I1/G (dff) r library setup time data required time data required time data arrival time slack (VIOLATED) **************************************** Report : area Design : test_csi Version: Z SP4 Date : Tue Apr 21 11:07: **************************************** Library(s) Used: 11

12 UofU_Example (File: /uusoc/facility/cad_common/local/cadence/lib/uofu_example/uofu_example.db) Number of ports: 5 Number of nets: 11 Number of cells: 7 Number of references: 5 Combinational area: Noncombinational area: Net Interconnect area: Total cell area: Total area: The conclusion is that CSI is a way to design your circuits using schematics instead (or in addition to) synthesis, and to generate structural netlists directly from the schematics that you can use with SOC Encounter for place and route, and with Synopsys for timing analysis or further synthesis. 12

CS6710 Tool Suite. Synthesis and Place & Route. Synopsys design compiler Cadence SOC Encounter. Synopsys Design Compiler.

CS6710 Tool Suite. Synthesis and Place & Route. Synopsys design compiler Cadence SOC Encounter. Synopsys Design Compiler. Synthesis and Place & Route Synopsys design compiler Cadence SOC Encounter Verilog-XL Behavioral Verilog Your Library CS6710 Tool Suite Cadence SOC Encounter Synopsys Design Compiler Structural Verilog

More information

CS/ECE 6710 Tool Suite. Design Compiler. Design Compiler Basic Flow. beh2str the simplest script! Design Compiler Basic Flow

CS/ECE 6710 Tool Suite. Design Compiler. Design Compiler Basic Flow. beh2str the simplest script! Design Compiler Basic Flow Synthesis and Place & Route Synopsys design compiler Cadence Encounter Digital Implementation System (EDI) Verilog sim Behavioral Verilog Your Library CS/ECE 6710 Tool Suite Cadence EDI Synopsys Design

More information

RTL Synthesis using Design Compiler. Dr Basel Halak

RTL Synthesis using Design Compiler. Dr Basel Halak RTL Synthesis using Design Compiler Dr Basel Halak Learning Outcomes: After completing this unit, you should be able to: 1. Set up the DC RTL Synthesis Software and run synthesis tasks 2. Synthesize a

More information

Automated Synthesis from HDL models. Design Compiler (Synopsys) Leonardo (Mentor Graphics)

Automated Synthesis from HDL models. Design Compiler (Synopsys) Leonardo (Mentor Graphics) Automated Synthesis from HDL models Design Compiler (Synopsys) Leonardo (Mentor Graphics) Front-End Design & Verification VHDL Verilog SystemC Create Behavioral/RTL HDL Model(s) VHDL-AMS Verilog-A ModelSim

More information

Compile RISC_CORE. Learning Objectives. After completing this lab, you should be able to: Perform a top-down compile strategy on the RISC_CORE design

Compile RISC_CORE. Learning Objectives. After completing this lab, you should be able to: Perform a top-down compile strategy on the RISC_CORE design 15 Learning Objectives After completing this lab, you should be able to: Perform a top-down compile strategy on the RISC_CORE design Lab Duration: 75 minutes Lab 15-1 Synopsys 31833-000-S38 Flow Diagram

More information

Getting a Quick Start 2

Getting a Quick Start 2 2 Getting a Quick Start 2 This chapter walks you through the basic synthesis design flow (shown in Figure 2-1). You use the same basic flow for both design exploration and design implementation. The following

More information

CS/ECE 6710 Tool Suite

CS/ECE 6710 Tool Suite Synthesis and Place & Route Synopsys design compiler Cadence Encounter Digital Implementation System (EDI) Verilog sim Behavioral Verilog Your Library CCAR AutoRouter CS/ECE 6710 Tool Suite Cadence EDI

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

A. Setting Up the Environment a. ~/ece394 % mkdir synopsys b.

A. Setting Up the Environment a. ~/ece394 % mkdir synopsys b. ECE 394 ASIC & FPGA Design Synopsys Design Compiler and Design Analyzer Tutorial A. Setting Up the Environment a. Create a new folder (i.e. synopsys) under your ece394 directory ~/ece394 % mkdir synopsys

More information

EE4415 Integrated Digital Design Project Report. Name: Phang Swee King Matric Number: U066584J

EE4415 Integrated Digital Design Project Report. Name: Phang Swee King Matric Number: U066584J EE4415 Integrated Digital Design Project Report Name: Phang Swee King Matric Number: U066584J April 10, 2010 Contents 1 Lab Unit 1 2 2 Lab Unit 2 3 3 Lab Unit 3 6 4 Lab Unit 4 8 5 Lab Unit 5 9 6 Lab Unit

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

Chapter9 Verilog Synthesis

Chapter9 Verilog Synthesis Chapter9 Verilog Synthesis 160 CHAPTER 9: Verilog Synthesis #/* -*- c -*- */ #/**********************************************************************/ #/* Defaults can be found in $SYNOPSYS/admin/setup/.synopsys_dc.setup

More information

CS6710 Tool Suite. Design Compiler. Design Compiler Basic Flow. Design Compiler Basic Flow. Synthesis and Place & Route

CS6710 Tool Suite. Design Compiler. Design Compiler Basic Flow. Design Compiler Basic Flow. Synthesis and Place & Route Synthesis and Place & Route Verilog-XL CS6710 Tool Suite Synopsys Design Compiler Behavioral Verilog Synopsys design compiler Cadence Encounter Digital Implementation System (EDI) Your Library Circuit

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

Introduction to Design With Verilog. Synopsys University Courseware 2008 Synopsys, Inc. Lecture - 3 Developed By: Paul D. Franzon

Introduction to Design With Verilog. Synopsys University Courseware 2008 Synopsys, Inc. Lecture - 3 Developed By: Paul D. Franzon Introduction to Design With Verilog Course Mantras One clock, one edge, Flip-flops only Design BEFORE coding Behavior implies function Clearly separate control and datapath Purpose of HDLs Purpose of Hardware

More information

Introduction to Design Compiler

Introduction to Design Compiler Introduction to Design Compiler Courtesy of Dr. An-Yeu Wu @NTU, CIC/NARL@Taiwan http://csce.uark.edu +1 (479) 575-6043 yrpeng@uark.edu What is Synthesis Synthesis = translation + optimization We will get

More information

DC-Tcl Procedures. Learning Objectives. After completing this lab, you should be able to: Write generic DC-Tcl procedures. Lab Duration: 30 minutes

DC-Tcl Procedures. Learning Objectives. After completing this lab, you should be able to: Write generic DC-Tcl procedures. Lab Duration: 30 minutes w 14 Learning Objectives After completing this lab, you should be able to: Write generic DC-Tcl procedures Lab Duration: 30 minutes Lab 14-1 Synopsys 31833-000-S38 Flow Diagram of Lab Create and test myprocs.tcl

More information

Graduate Institute of Electronics Engineering, NTU Synopsys Synthesis Overview

Graduate Institute of Electronics Engineering, NTU Synopsys Synthesis Overview Synopsys Synthesis Overview Ben 2006.02.16 ACCESS IC LAB Outline Introduction Setting Design Environment Setting Design Constraints Synthesis Report and Analysis pp. 2 What is Synthesis Synthesis = translation

More information

Tutorial for Verilog Synthesis Lab (Part 2)

Tutorial for Verilog Synthesis Lab (Part 2) Tutorial for Verilog Synthesis Lab (Part 2) Before you synthesize your code, you must absolutely make sure that your verilog code is working properly. You will waste your time if you synthesize a wrong

More information

Design Rules and Min Timing

Design Rules and Min Timing 7 Design Rules and Min Timing Learning Objectives After completing this lab, you should be able to: Apply design rules and hold time constraints Fix design rule violations Fix hold time violations Lab

More information

Setup file.synopsys_dc.setup

Setup file.synopsys_dc.setup Setup file.synopsys_dc.setup The.synopsys_dc.setup file is the setup file for Synopsys' Design Compiler. Setup file is used for initializing design parameters and variables, declare design libraries, and

More information

Graduate Institute of Electronics Engineering, NTU Synopsys Synthesis Overview

Graduate Institute of Electronics Engineering, NTU Synopsys Synthesis Overview Synopsys Synthesis Overview Lecturer: 沈文中 Date: 2005.05.06 ACCESS IC LAB Introduction Outline Synopsys Graphical Environment Setting Design Environment Setting Design Constraints Design Optimization Finite

More information

HOW TO SYNTHESIZE VERILOG CODE USING RTL COMPILER

HOW TO SYNTHESIZE VERILOG CODE USING RTL COMPILER HOW TO SYNTHESIZE VERILOG CODE USING RTL COMPILER This tutorial explains how to synthesize a verilog code using RTL Compiler. In order to do so, let s consider the verilog codes below. CNT_16 Module: 16

More information

Hardware Verification Group. Department of Electrical and Computer Engineering, Concordia University, Montreal, Canada. CAD Tool Tutorial.

Hardware Verification Group. Department of Electrical and Computer Engineering, Concordia University, Montreal, Canada. CAD Tool Tutorial. Digital Logic Synthesis and Equivalence Checking Tools Hardware Verification Group Department of Electrical and Computer Engineering, Concordia University, Montreal, Canada CAD Tool Tutorial May, 2010

More information

Logic Synthesis ( Prof. Dejan Marković VLSI Design Flow. Specifications & System Simulation (MATLAB, Simulink, C++)

Logic Synthesis ( Prof. Dejan Marković VLSI Design Flow. Specifications & System Simulation (MATLAB, Simulink, C++) Logic Synthesis EEM216A Fall 2012 Prof. Dejan Marković ee216a@gmail.com VLSI Design Flow Specifications & System Simulation (MATLAB, Simulink, C++) RTL Design (Verilog HDL) Logic Synthesis ( DC) Today

More information

Multiple Clocks and Timing Exceptions

Multiple Clocks and Timing Exceptions 10 Multiple Clocks and Timing Exceptions Learning Objectives This lab is intended to give you a better understanding of how static timing analysis works and how timing exceptions are properly applied.

More information

Altera/Synopsys User Guide

Altera/Synopsys User Guide Altera/Synopsys User Guide About this User Guide July 1995 This user guide provides design guidelines, sample VHDL designs, Altera-specific design methods, and optimal synthesis options to assist designers

More information

Lecture 11 Logic Synthesis, Part 2

Lecture 11 Logic Synthesis, Part 2 Lecture 11 Logic Synthesis, Part 2 Xuan Silvia Zhang Washington University in St. Louis http://classes.engineering.wustl.edu/ese461/ Write Synthesizable Code Use meaningful names for signals and variables

More information

Tutorial 2.(b) : Synthesizing your design using the Synopsys Design Compiler ( For DFT Flow)

Tutorial 2.(b) : Synthesizing your design using the Synopsys Design Compiler ( For DFT Flow) Tutorial 2.(b) : Synthesizing your design using the Synopsys Design Compiler ( For DFT Flow) Objectives: In this tutorial you will learrn to use Synopsys Design Compiler (DC) to perform hardware synthesis

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

Synthesis. Other key files. Standard cell (NAND, NOR, Flip-Flop, etc.) FPGA CLB

Synthesis. Other key files. Standard cell (NAND, NOR, Flip-Flop, etc.) FPGA CLB SYNTHESIS Synthesis Involves synthesizing a gate netlist from verilog source code We use Design Compiler (DC) by Synopsys which is the most popular synthesis tool used in industry Target library examples:

More information

Specifying Timing Exceptions

Specifying Timing Exceptions Specifying Timing Exceptions Learning Objectives This lab is intended to give you a better understanding of how static timing analysis works and how timing exceptions are applied properly. After completing

More information

ECE 551 Design Vision Tutorial

ECE 551 Design Vision Tutorial ECE 551 Design Vision Tutorial ECE 551 Staff Dept of Electrical & Computer Engineering, UW-Madison Lesson 0 Tutorial Setup... 2 Lesson 1 Code Input (Analyze and Elaborate)... 4 Lesson 2 - Simple Synthesis...

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

SmartTime for Libero SoC v11.5

SmartTime for Libero SoC v11.5 SmartTime for Libero SoC v11.5 User s Guide NOTE: PDF files are intended to be viewed on the printed page; links and cross-references in this PDF file may point to external files and generate an error

More information

EECS 151/251A ASIC Lab 6: Power and Timing Verification

EECS 151/251A ASIC Lab 6: Power and Timing Verification EECS 151/251A ASIC Lab 6: Power and Timing Verification Written by Nathan Narevsky (2014,2017) and Brian Zimmer (2014) Modified by John Wright (2015,2016), Ali Moin (2017) and Taehwan Kim (2018) Overview

More information

EECS 151/251A ASIC Lab 3: Logic Synthesis

EECS 151/251A ASIC Lab 3: Logic Synthesis EECS 151/251A ASIC Lab 3: Logic Synthesis Written by Nathan Narevsky (2014, 2017) and Brian Zimmer (2014) Modified by John Wright (2015,2016) and Taehwan Kim (2018) Overview For this lab, you will learn

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

101-1 Under-Graduate Project Digital IC Design Flow

101-1 Under-Graduate Project Digital IC Design Flow 101-1 Under-Graduate Project Digital IC Design Flow Speaker: Ming-Chun Hsiao Adviser: Prof. An-Yeu Wu Date: 2012/9/25 ACCESS IC LAB Outline Introduction to Integrated Circuit IC Design Flow Verilog HDL

More information

Introduction to Design Vision. Instructor: Prof. Shantanu Dutt. TA: Soumya Banerjee

Introduction to Design Vision. Instructor: Prof. Shantanu Dutt. TA: Soumya Banerjee Introduction to Design Vision Instructor: Prof. Shantanu Dutt TA: Soumya Banerjee We use Synopsys Design Vision for synthesizing the VHDL descriptions. If you are aware in the show schematic option in

More information

Top-down digital design flow

Top-down digital design flow 6 Dec 2005 Top-down digital design flow EDA tools: Modelsim, Synopsys Design Compiler, Cadence Encounter Alain Vachoux Microelectronic Systems Lab STI-IMM-LSM alain.vachoux@epfl.ch version 3.0.2 / 6 Dec

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

Push-button Synthesis or, Using dc_perl to do_the_right_thing

Push-button Synthesis or, Using dc_perl to do_the_right_thing Push-button Synthesis or, Using dc_perl to do_the_right_thing Kurt Baty WSFDB Consulting 26 Hill Street Medway MA 02053 Phone: +1.508.429.4198 Email: kurt@wsfdb.com Steve Golson Trilobyte Systems 33 Sunset

More information

Behavioral Modeling and Timing Constraints

Behavioral Modeling and Timing Constraints Introduction Behavioral modeling was introduced in Lab 1 as one of three widely used modeling styles. Additional capabilities with respect to testbenches were further introduced in Lab 4. However, there

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

Virtex 2.1i tutorial: Verilog using FPGA Compiler and VerilogXL

Virtex 2.1i tutorial: Verilog using FPGA Compiler and VerilogXL Virtex 2.1i tutorial: Verilog using FPGA Compiler and VerilogXL This tutorial describes the Virtex design flow with Synopsys FPGA Compiler, and simulation flow with VerilogXL simulator. It includes the

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

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

LECTURE 5: VHDL SYNTHESIS with SYNOPSYS dc_shell

LECTURE 5: VHDL SYNTHESIS with SYNOPSYS dc_shell EECS 317 CAD Computer Design LECTURE 5: VHDL SYNTHESIS with SYNOPSYS dc_shell Instructor: Francis G. Wolff wolff@eecs.cwru.edu Case Western Reserve University This presentation uses powerpoint animation:

More information

Hardware Verification Group

Hardware Verification Group Digital Logic Synthesis and Equivalence Checking Tools Tutorial Hardware Verification Group Department of Electrical and Computer Engineering, Concordia University, Montreal, Canada {n ab, h aridh}@encs.concordia.ca

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

ECE 4514 Digital Design II. Spring Lecture 20: Timing Analysis and Timed Simulation

ECE 4514 Digital Design II. Spring Lecture 20: Timing Analysis and Timed Simulation ECE 4514 Digital Design II Lecture 20: Timing Analysis and Timed Simulation A Tools/Methods Lecture Topics Static and Dynamic Timing Analysis Static Timing Analysis Delay Model Path Delay False Paths Timing

More information

Overview. Design flow. Principles of logic synthesis. Logic Synthesis with the common tools. Conclusions

Overview. Design flow. Principles of logic synthesis. Logic Synthesis with the common tools. Conclusions Logic Synthesis Overview Design flow Principles of logic synthesis Logic Synthesis with the common tools Conclusions 2 System Design Flow Electronic System Level (ESL) flow System C TLM, Verification,

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

ARM 64-bit Register File

ARM 64-bit Register File ARM 64-bit Register File Introduction: In this class we will develop and simulate a simple, pipelined ARM microprocessor. Labs #1 & #2 build some basic components of the processor, then labs #3 and #4

More information

Performing STA. Learning Objectives

Performing STA. Learning Objectives Performing STA Learning Objectives UNIT 45 minutes Unit 8 You are provided with a design netlist that does not meet timing. You are also provided with another set of sub blocks that were improved for timing

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

VIVADO TUTORIAL- TIMING AND POWER ANALYSIS

VIVADO TUTORIAL- TIMING AND POWER ANALYSIS VIVADO TUTORIAL- TIMING AND POWER ANALYSIS IMPORTING THE PROJECT FROM ISE TO VIVADO Initially for migrating the same project which we did in ISE 14.7 to Vivado 2016.1 you will need to follow the steps

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

Actel Libero TM Integrated Design Environment v2.3 Structural Schematic Flow Design Tutorial

Actel Libero TM Integrated Design Environment v2.3 Structural Schematic Flow Design Tutorial Actel Libero TM Integrated Design Environment v2.3 Structural Schematic Flow Design Tutorial 1 Table of Contents Design Flow in Libero TM IDE v2.3 Step 1 - Design Creation 3 Step 2 - Design Verification

More information

King Fahd University of Petroleum and Minerals. Computer Engineering Department. COE 561 Digital Systems Design and Synthesis (Course Activity)

King Fahd University of Petroleum and Minerals. Computer Engineering Department. COE 561 Digital Systems Design and Synthesis (Course Activity) King Fahd University of Petroleum and Minerals Computer Engineering Department COE 561 Digital Systems Design and Synthesis (Course Activity) Synthesis using Synopsys Design Compiler Tutorial The Synthesis

More information

AND-OR-Invert gates with 4 (22) and 3 (21) inputs. NAND3X1, NAND2X2, NAND2X1 2- and 3-input NAND 2-input MUX, and 2-input inverting mux (N)

AND-OR-Invert gates with 4 (22) and 3 (21) inputs. NAND3X1, NAND2X2, NAND2X1 2- and 3-input NAND 2-input MUX, and 2-input inverting mux (N) Chapter13 Design Example Cell Name Description XOR2X1, XNOR2X1 2-input XOR and XNOR TIELO, TIEHI Cells used to tie inputs to logic 1 or 0 OAI22X1, OAI21X1 OR-AND-Invert gates with 4 (22) and 3 (21) inputs

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

My Second FPGA for Altera DE2-115 Board

My Second FPGA for Altera DE2-115 Board My Second FPGA for Altera DE2-115 Board 數位電路實驗 TA: 吳柏辰 Author: Trumen Outline DE2-115 System Builder ModelSim-Altera 2 DE2-115 System Builder 3 Introduction to DE2-115 System Builder (1/2) This section

More information

11. Synopsys Design Compiler FPGA Support

11. Synopsys Design Compiler FPGA Support 11. Synopsys Design Compiler FPGA Support QII51014-7.2.0 Introduction Programmable logic device (PLD) designs have reached the complexity and performance requirements of ASIC designs. As a result, advanced

More information

EE-382M VLSI II. Early Design Planning: Front End

EE-382M VLSI II. Early Design Planning: Front End EE-382M VLSI II Early Design Planning: Front End Mark McDermott EE 382M-8 VLSI-2 Page Foil # 1 1 EDP Objectives Get designers thinking about physical implementation while doing the architecture design.

More information

ECE 2300 Digital Logic & Computer Organization. More Sequential Logic Verilog

ECE 2300 Digital Logic & Computer Organization. More Sequential Logic Verilog ECE 2300 Digital Logic & Computer Organization Spring 2018 More Sequential Logic Verilog Lecture 7: 1 Announcements HW3 will be posted tonight Prelim 1 Thursday March 1, in class Coverage: Lectures 1~7

More information

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

Laboratory 6. - Using Encounter for Automatic Place and Route. By Mulong Li, 2013 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 Background

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

18. Synopsys Formality Support

18. Synopsys Formality Support 18. Synopsys Formality Support QII53015-7.2.0 Introduction Formal verification of FPGA designs is gaining momentum as multi-million System-on-a-Chip (SoC) designs are targeted at FPGAs. Use the Formality

More information

Graphics: Alexandra Nolte, Gesine Marwedel, Universität Dortmund. RTL Synthesis

Graphics: Alexandra Nolte, Gesine Marwedel, Universität Dortmund. RTL Synthesis Graphics: Alexandra Nolte, Gesine Marwedel, 2003 Universität Dortmund RTL Synthesis Purpose of HDLs Purpose of Hardware Description Languages: Capture design in Register Transfer Language form i.e. All

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

Post-Synthesis Simulation. VITAL Models, SDF Files, Timing Simulation

Post-Synthesis Simulation. VITAL Models, SDF Files, Timing Simulation Post-Synthesis Simulation VITAL Models, SDF Files, Timing Simulation Post-synthesis simulation Purpose: Verify correctness of synthesized circuit Verify synthesis tool delay/timing estimates Synthesis

More information

Preparing for Optimization 7

Preparing for Optimization 7 7 Preparing for Optimization 7 This chapter contains the following sections: Defining the Design Environment Selecting a Compile Strategy Setting Design Rule Constraints Setting Optimization Constraints

More information

Standard Cell Based Design Flow Using Modelsim, Buildgates, and Silicon Ensemble

Standard Cell Based Design Flow Using Modelsim, Buildgates, and Silicon Ensemble Arifur Rahman, Spring 2004, Polytechnic University, NY Standard Cell Based Design Flow Using Modelsim, Buildgates, and Silicon Ensemble Mapped Netlist Back Annotation using SDF File and mapped netlist

More information

Introduction to STA using PT

Introduction to STA using PT Introduction to STA using PT Learning Objectives Given the design, library and script files, your task will be to successfully perform STA using the PrimeTime GUI and generate reports. After completing

More information

FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1

FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1 FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1 Anurag Dwivedi Digital Design : Bottom Up Approach Basic Block - Gates Digital Design : Bottom Up Approach Gates -> Flip Flops Digital

More information

Partitioning for Better Synthesis Results

Partitioning for Better Synthesis Results 3 Partitioning for Better Synthesis Results Learning Objectives After completing this lab, you should be able to: Use the group and ungroup commands to repartition a design within Design Analyzer Analyze

More information

Asic Design ET Alexander de Graaf, EEMCS/ME/CAS 5/20/14. Challenge the future. Delft University of Technology

Asic Design ET Alexander de Graaf, EEMCS/ME/CAS 5/20/14. Challenge the future. Delft University of Technology Asic Design ET 4351 Alexander de Graaf, EEMCS/ME/CAS 5/20/14 Delft University of Technology Challenge the future Outline. 1. Design flow 2. Synthesis 3. Place & Route ASIC Design: Backend 2 100 1. Design

More information

Synthesizable Verilog

Synthesizable Verilog Synthesizable Verilog Courtesy of Dr. Edwards@Columbia, and Dr. Franzon@NCSU http://csce.uark.edu +1 (479) 575-6043 yrpeng@uark.edu Design Methodology Structure and Function (Behavior) of a Design HDL

More information

Quartus II Tutorial. September 10, 2014 Quartus II Version 14.0

Quartus II Tutorial. September 10, 2014 Quartus II Version 14.0 Quartus II Tutorial September 10, 2014 Quartus II Version 14.0 This tutorial will walk you through the process of developing circuit designs within Quartus II, simulating with Modelsim, and downloading

More information

ECE 5745 ASIC Tutorial

ECE 5745 ASIC Tutorial README.md - Grip ECE 5745 ASIC Tutorial This tutorial will explain how to use a set of Synopsys tools to push an RTL design through synthesis, place-and-route, and power analysis. This tutorial assumes

More information

Reading the Design into PT

Reading the Design into PT Reading the Design into PT Learning Objectives Given a set of design and library files, you will read them into PrimeTime memory and access the design objects. After completing this lab, you should be

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

EECS 470 Lab 2. Synopsys Build System. Department of Electrical Engineering and Computer Science College of Engineering University of Michigan

EECS 470 Lab 2. Synopsys Build System. Department of Electrical Engineering and Computer Science College of Engineering University of Michigan EECS 470 Lab 2 Synopsys Build System Department of Electrical Engineering and Computer Science College of Engineering University of Michigan Friday, 17 th January, 2014 (University of Michigan) Lab 2:

More information

A Comparison of Hierarchical Compile Strategies

A Comparison of Hierarchical Compile Strategies A Comparison of Hierarchical Compile Strategies Steve Golson Trilobyte Systems 33 Sunset Road Carlisle MA 01741 Phone: +1.978.369.9669 Fax: +1.978.371.9964 Email: sgolson@trilobyte.com http://www.trilobyte.com

More information

Introduction. Purpose. Intended Audience. Conventions. Close

Introduction. Purpose. Intended Audience. Conventions. Close Introduction Introduction Verilog-XL is a simulator that allows you to test the logic of a design. The process of logic simulation in Verilog-XL is as follows: 1. Describe the design to Verilog-XL. 2.

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

EE 5327 VLSI Design Laboratory Lab 8 (1 week) Formal Verification

EE 5327 VLSI Design Laboratory Lab 8 (1 week) Formal Verification EE 5327 VLSI Design Laboratory Lab 8 (1 week) Formal Verification PURPOSE: To use Formality and its formal techniques to prove or disprove the functional equivalence of two designs. Formality can be used

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

The Verilog Synthesis Process (v1.0) (According to the 470 GSIs)

The Verilog Synthesis Process (v1.0) (According to the 470 GSIs) The Verilog Synthesis Process (v1.0) (According to the 470 GSIs) 1 Introduction Janurary 20, 2008 The purpose of this document is to teach you about Makefiles and the Verilog synthesis process. The synthesis

More information

Gates-on-the-Fly fixes Logic Equivalence Check Failures

Gates-on-the-Fly fixes Logic Equivalence Check Failures Gates-on-the-Fly fixes Logic Equivalence Check Failures Logical Equivalence Checking software like Cadence s Conformal and Synopsys Formality create detailed reports of differences and errors, but it is

More information

ECE 4514 Digital Design II. Spring Lecture 2: Hierarchical Design

ECE 4514 Digital Design II. Spring Lecture 2: Hierarchical Design ECE 4514 Digital Design II Spring 2007 Abstraction in Hardware Design Remember from last lecture that HDLs offer a textual description of a netlist. Through abstraction in the HDL, we can capture more

More information

Project Timing Analysis

Project Timing Analysis Project Timing Analysis Jacob Schneider, Intel Corp Sanjeev Gokhale, Intel Corp Mark McDermott EE 382M Class Notes Overview Brief overview of global timing Example of extracting AT, RAT, and PASSTHROUGHs

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

ASIC Development. ASIC Classes. What s an ASIC, Anyhow? ASIC Methodology. Abstract Representations 2/16/2018

ASIC Development. ASIC Classes. What s an ASIC, Anyhow? ASIC Methodology. Abstract Representations 2/16/2018 ASIC Development ECE 527: Application Specific Integrated Circuit Development Logic Synthesis and Analysis Objective is to produce a physical design. ASIC development is considered done when a layout file

More information

1 Design Process HOME CONTENTS INDEX. For further assistance, or call your local support center

1 Design Process HOME CONTENTS INDEX. For further assistance,  or call your local support center 1 Design Process VHDL Compiler, a member of the Synopsys HDL Compiler family, translates and optimizes a VHDL description to an internal gate-level equivalent. This representation is then compiled with

More information

ENGR 3410: MP #1 MIPS 32-bit Register File

ENGR 3410: MP #1 MIPS 32-bit Register File ENGR 3410: MP #1 MIPS 32-bit Register File Due: October 12, 2007, 5pm 1 Introduction The purpose of this machine problem is to create the first large component of our MIPS-style microprocessor the register

More information

ENGR 3410: MP #1 MIPS 32-bit Register File

ENGR 3410: MP #1 MIPS 32-bit Register File ENGR 3410: MP #1 MIPS 32-bit Register File Due: Before class, September 23rd, 2008 1 Introduction The purpose of this machine problem is to create the first large component of our MIPS-style microprocessor

More information

ENGR 3410: Lab #1 MIPS 32-bit Register File

ENGR 3410: Lab #1 MIPS 32-bit Register File ENGR 3410: Lab #1 MIPS 32-bit Register File Due: October 12, 2005, beginning of class 1 Introduction The purpose of this lab is to create the first large component of our MIPS-style microprocessor the

More information