CPF Tutorial Yanqing Zhang, Yousef Shaksheer. CPF Tutorial First, you will need to create a.cpf file. Here we will use “synth.cpf” as an example, which.

Slides:



Advertisements
Similar presentations
Access Control List (ACL)
Advertisements

ASENT_IMPORT.PPT Importing Board Data Last revised 08/10/2005.
RAPID Memory Compiler Evaluation by David Artz
Predictable Success Isolation Information Theoretic: UPF 2.0 and the Isolation Attributes Rev. 0.1 Jason Binney 5/15/2008 “AKA: Back to the Future”
Power modeling flow for a power analysis at system level Cyril Chevalier, Audrey Le-Clercq, Diana Moisuc STMicroelectronics Philippe Garrault Docea Power.
Logic Synthesis – 3 Optimization Ahmed Hemani Sources: Synopsys Documentation.
DAAD Project ISSNBS Niš, LOW POWER MICROCONTROLLER DESIGN BY USING UPF Borisav Jovanović, Milunka Damnjanović, Faculty of Electronic Engineering.
Evan Vaughan.  Get RTL Compilier and SoC Encounter to place & route a bitsliced datapath  Began by modifying/reducing libraries ◦ Modify>synthesize>P&R.
S. Reda EN160 SP’08 Design and Implementation of VLSI Systems (EN1600) Lecture 14: Power Dissipation Prof. Sherief Reda Division of Engineering, Brown.
9 th Sept, VLSI Design & Test seminar series, Fall 2009, Auburn University, Auburn, AL Low Power Implementation of ARM1176JZF-S by Manish Kulkarni.
On-Line Adjustable Buffering for Runtime Power Reduction Andrew B. Kahng Ψ Sherief Reda † Puneet Sharma Ψ Ψ University of California, San Diego † Brown.
King Fahd University of Petroleum and Minerals Computer Engineering Department COE 561 Digital Systems Design and Synthesis (Course Activity) Synthesis.
Hands-On Microsoft Windows Server 2003 Administration Chapter 5 Administering File Resources.
S. Reda EN160 SP’07 Design and Implementation of VLSI Systems (EN0160) Lecture 13: Power Dissipation Prof. Sherief Reda Division of Engineering, Brown.
Tutorial 11: Connecting to External Data
Churning the Most Out of IP-XACT for Superior Design Quality Ayon Dey Lead Engineer, TI Anshuman Nayak Senior Product Director, Atrenta Samantak Chakrabarti.
UPF-Based Power-Aware Design Flow Version 1.1
Project Implementation for COSC 5050 Distributed Database Applications Lab1.
Robust Low Power VLSI R obust L ow P ower VLSI Memory Management Units for Instruction and Data Cache for OR1200 CPU Core Arijit Banerjee ASIC/SOC Class.
A 130 nm Sub-VT Power-Gated Processor for Body Sensor Network Applications Yanqing Zhang Yousef Shakhsheer 1.
First Screen : First window form will always remain open, for the user to select menu options. 1.
Methodology for effective hierarchical verification of low power designs Ramesh Rajagopalan Cisco Systems Inc, San Jose,
By Lecturer / Aisha Dawood 1.  You can control the number of dispatcher processes in the instance. Unlike the number of shared servers, the number of.
P1801 Proposal Discussion. October 5, Wireless network access at Magma SSID (not broadcast): lava 64 bit key or 10 digit Hex key : 00000fffff.
ASENT_IMPORT.PPT Importing Part Lists and Board Data Last revised 10/28/2009.
The George Washington University School of Engineering and Applied Science Department of Electrical and Computer Engineering ECE122 – 30 Lab 5: Layout.
ASIC Design Flow – An Overview Ing. Pullini Antonio
Access Control List (ACL) W.lilakiatsakun. ACL Fundamental ► Introduction to ACLs ► How ACLs work ► Creating ACLs ► The function of a wildcard mask.
Domain 3 Understanding the Adobe Dreamweaver CS5 Interface.
© 2003 Xilinx, Inc. All Rights Reserved For Academic Use Only Xilinx Design Flow FPGA Design Flow Workshop.
ECE122 – Digital Electronics & Design
King Fahd University of Petroleum and Minerals Computer Engineering Department COE 561 Digital Systems Design and Synthesis (Course Activity) Synthesis.
Oracle Data Integrator Transformations: Adding More Complexity
Synopsys Custom Designer Tutorial for a chip integration using the University of Utah Standard Cell Libraries In ON Semiconductor 0.5u C5 CMOS Version.
The Macro Design Process The Issues 1. Overview of IP Design 2. Key Features 3. Planning and Specification 4. Macro Design and Verification 5. Soft Macro.
Synopsys Custom Designer Tutorial for a chip integration using the University of Utah Standard Cell Libraries In ON Semiconductor 0.5u C5 CMOS Version.
Judith Richardson NXP Semiconductors, Corporate I&T, Design Technology and Flows August 21, 2007 UPF examples.
Overview on Low-Power design Sara Marconi. OUTLINE 2 State of the art in HEP –existing pixel chips Low power design techniques (in the industry) –from.
Creating Macros in Excel Adding Automated Functionality to Excel & Office Applications.
Chapter 9 Constraints. Chapter Objectives  Explain the purpose of constraints in a table  Distinguish among PRIMARY KEY, FOREIGN KEY, UNIQUE, CHECK,
04/06/031 ECE 551: Digital System Design & Synthesis Lecture Set 9 9.1: Constraints and Timing (In separate file) 9.2: Optimization - Part 1 9.3: Optimization.
CHAPTER 8 Developing Hard Macros The topics are: Overview Hard macro design issues Hard macro design process Physical design for hard macros Block integration.
Fall 2011 Anna Grimley & Josh Mandich Lab Section: F.
Simultaneous Analog Placement and Routing with Current Flow and Current Density Considerations H.C. Ou, H.C.C. Chien and Y.W. Chang Electronics Engineering,
1 Parametric analysis Overview This course describes how to set up parametric and temperature analyses. Parametric and temperature are both simple multi-run.
Intro to Excel - Session 5.21 Tutorial 5 - Session 5.2 Working with Excel Lists.
Intermacs Form Download Excel Tutorial Pivot Tables, Graphic Tools, Macros By: Devin Koehl.
Update on the Design Implementation Methodology for the 130nm process Microelecronics User Group meeting TWEPP 2010 – Aachen Sandro Bonacini CERN PH/ESE.
1 Copyright  2001 Pao-Ann Hsiung SW HW Module Outline l Introduction l Unified HW/SW Representations l HW/SW Partitioning Techniques l Integrated HW/SW.
Constraints Lesson 8. Skills Matrix Constraints Domain Integrity: A domain refers to a column in a table. Domain integrity includes data types, rules,
Intermacs Form Download Excel Tutorial Pivot Tables, Graphic Tools, Macros By: Devin Koehl.
1 Intro stored procedures Declaring parameters Using in a sproc Intro to transactions Concurrency control & recovery States of transactions Desirable.
1 Documentation Progression Send To Standard Document Library Document Center – Drop Off Library – Rules Based on Content Type and Metadata routes files.
Level 1-2 Trigger Data Base development Current status and overview Myron Campbell, Alexei Varganov, Stephen Miller University of Michigan August 17, 2000.
ECE122 – Digital Electronics & Design Tanner Tools Tutorial Ritu Bajpai September 4, 2008.
Constraints Advanced Database Systems Dr. AlaaEddin Almabhouh.
Bharath Kumar Poluri, Atul Ramakant Lele, Aswani Kumar Golla, Lakshmanan Balasubramanian Texas Instruments (India) Pvt. Ltd. 1 Fully automated interface.
Agenda for Today  DATABASE Definition What is DBMS? Types Of Database Most Popular Primary Database  SQL Definition What is SQL Server? Versions Of SQL.
11 Copyright © 2009, Oracle. All rights reserved. Enhancing ETL Performance.
ASIC Design Methodology
Library Characterization
TUTORIAL: Digital-on-Top
Customizing custom.
Dept. of Electrical and Computer Engineering
SoCKs Flow: Here, There, and Back Again
Ring Oscillator Clocks and Margins
Microsoft Office 2013 Coming to a PC near you!.
Cadence Low-Power Solution
COOLRUNNER II REAL DIGITAL CPLD
Yanqing Zhang Yousef Shakhsheer 4/22/2010
Presentation transcript:

CPF Tutorial Yanqing Zhang, Yousef Shaksheer

CPF Tutorial First, you will need to create a.cpf file. Here we will use “synth.cpf” as an example, which is a script for power-gating in the synthesis flow.

CPF Tutorial Next, we will break down the writing of the.cpf file into specific steps. Note that you will only need to write the CPF file once, and it will be used for the ENTIRE flow. In other words, once written, there is no need to change it. We start by setting the cpf version: set_cpf_version 1.1 … For a complete list of supported CPF commands and CPF user guide, refer to documentation at: /app/cadence/RC81/doc/cpf_ref /app/cadence/RC81/doc/cpf_user

CPF Tutorial We define the technology to be used in our design: set_cpf_version 1.1 ################################################# # Technology part of the CPF ################################################# # define the library sets, a library ‘set’ is often a set of.lib’s that have been characterized at the same #voltage, here, both the standard cell library SubVT_400mV.lib and the header library headers.lib have #been characterized at 400mV. define_library_set -name CORE9GPLL -libraries {SubVT_400mV.lib headers.lib} # define the isolation cells, also define the enable pin and enable condition for isolation cells #define_isolation_cell -cells ISOLN* -enable ENbar -valid_location on # define the always on cell # define the state retention cell # define the power switch cells, defines names of the headers used, the power on condition, and the #name of the power rails that it will be switching between define_power_switch_cell -cells "HDX2 HDX4 HDX8 HDX16 HDX32 HDX64" \ -stage_1_enable !_EN -type header -gate_bias_pin gnd -power_switchable VDDS -power vdd \ -on_resistance …

CPF Tutorial We continue to define design parameters for our design, this means telling the tools, through the CPF file, which part of the design is to be low-power implemented, which instances belong to which power domain, and the different power modes that exist … # identify the design for which the CPF file is created, also define the units for numbers set_design PIC_ROM set_power_unit nW set_time_unit ns # create power domains, a power domain is a group of instances that have the same power switching characteristics. Also defines which instances are in each power domain, #and the condition where they switch to that power domain create_power_domain -name PD1 -default create_power_domain -name PD2 -instances {ALU} \ -shutoff_condition {MCLR} -secondary_domains PD1 # create nominal conditions, gives a name to each voltage island. This means that off=0, on=0.4V create_nominal_condition -name off -voltage 0 create_nominal_condition -name on -voltage 0.4 # create power modes, a power mode specifies which voltage island each power domain will be operating in create_power_mode -name PM1 -domain_conditions -default create_power_mode -name PM2 -domain_conditions # associate library sets with nominal conditions update_nominal_condition -name on -library_set CORE9GPLL # create rules for isolation logic insertion # create rules for state retention insertion # create rules for power switch insertion, defines the primary power net, and the virtual power rails associated with each power switch rule create_power_nets -nets vdd -voltage 0.4 create_power_switch_rule -name SW1 -domain PD2 -external_power_net vdd

CPF Tutorial Specify information for synthesis, this includes power and leakage targets, timing constraints, and IR drop and recovery time for power switches … # specify power targets, if not specified, you may specify these with commands in #synthesis #set_power_target -leakage 30 -dynamic 250 # specify timing constraints, attaches.sdc file with a power mode update_power_mode -name PM1 -sdc_files PIC_ROM_mapped.sdc update_power_mode -name PM2 -sdc_files PIC_ROM_mapped.sdc # update the rules with implementation info #update_isolation_rules -names iso1 -location to -cells ISOLNX2M #update_isolation_rules -names iso2 -location to -cells ISOLNX2M update_power_switch_rule -name SW1 -cells "HDX2 HDX4 HDX8 HDX16 HDX32 HDX64" - enable_condition_1 !MCLR -prefix CDN_ -average_ir_drop_limit peak_ir_drop_limit …

CPF Tutorial Finally, we end by specifying information for physical implementation, including the connecting of power/ground nets, and process corners … # declare power and ground nets, including virtual rails create_power_nets -nets VDDS -internal -average_ir_drop_limit peak_ir_drop_limit create_ground_nets -nets gnd -voltage 0 # (optional) create global connections create_global_connection -net vdd -pins vdd create_global_connection -net gnd -pins gnd # add implementation info for power domains update_power_domain -name PD1 -primary_power_net vdd -primary_ground_net gnd update_power_domain -name PD2 -primary_power_net VDDS -primary_ground_net gnd -transition_cycles 2.0 update_power_mode -name PM2 -average_ir_drop_limit -peak_ir_drop_limit # create operating corners create_operating_corner -name WC \ -process 1 -temperature 125 -voltage 0.4 -library_set CORE9GPLL # create analysis views create_analysis_view -name AV_PM1 -mode PM1 \ -domain_corners # indicate when the power information for the design ends end_design

CPF Tutorial Now we’ve completed the.cpf file. To incorporate the.cpf file in the synthesis script, we will have to add a few more commands to the synthesis script, as depicted below: … set_attribute drc_first true ####################################### # read in CPF library domains ####################################### read_cpf -library synth.cpf check_library … elaborate ${TOPMODULE} ####################################### # read in CPF file ####################################### read_cpf synth.cpf … check_design -unresolved report timing -mode PM1 -lint report timing -mode PM2 –lint … ######################################### # Synthesize to Technology Mapped Gates ######################################### synthesize -to_mapped -eff high reload_cpf commit_cpf …

CPF Tutorial We now move on to the physical implementation. Before specifying floorplan, we Load & Commit the CPF file:

CPF Tutorial We use hierarchical floorplanning, so we move power domain macro modules Encounter leaves a row and column between different power domains

CPF Tutorial Go through the regular flow of adding power rings for the PRIMARY rails only Add power switches in respective power domain

CPF Tutorial Specify switch topology, switch topology should be determined by estimated header sizing and header layout. To understand more about this, please refer to our Final Report

CPF Tutorial Specify Global Net Connections Specify virtual rail connections Specifically, specify which rail connects to each power domain Also specify which rails power switches will be switching between

CPF Tutorial Continue to do special route of power nets as you would in regular flow Rest of flow is same as SOC place and route flow CPF commands can be integrated into Encounter command script, so CPF retains the convenience synthesis flow brings us, with powerful flexibility for low power design

CPF Tutorial A snapshot of a completed, power- gated ALU within a microprocessor, with the power- gated ALU in the upper-left corner