Good design practices (What not to do) J. Christiansen, CERN - EP/MIC

Slides:



Advertisements
Similar presentations
ELEC 256 / Saif Zahir UBC / 2000 Timing Methodology Overview Set of rules for interconnecting components and clocks When followed, guarantee proper operation.
Advertisements

Classification of Digital Circuits  Combinational. Output depends only on current input values.  Sequential. Output depends on current input values and.
Copyright © 2001 Stephen A. Edwards All rights reserved Review of Digital Logic Prof. Stephen A. Edwards.
Flip-Flops Last time, we saw how latches can be used as memory in a circuit. Latches introduce new problems: We need to know when to enable a latch. We.
9/20/6Lecture 3 - Instruction Set - Al1 The Hardware Interface.
Modern VLSI Design 2e: Chapter 8 Copyright  1998 Prentice Hall PTR Topics n High-level synthesis. n Architectures for low power. n Testability and architecture.
Modern VLSI Design 4e: Chapter 8 Copyright  2008 Wayne Wolf Topics High-level synthesis. Architectures for low power. GALS design.
Introduction to CMOS VLSI Design Lecture 19: Design for Skew David Harris Harvey Mudd College Spring 2004.
Introduction to CMOS VLSI Design Clock Skew-tolerant circuits.
Synchronous Digital Design Methodology and Guidelines
CSE477 L19 Timing Issues; Datapaths.1Irwin&Vijay, PSU, 2002 CSE477 VLSI Digital Circuits Fall 2002 Lecture 19: Timing Issues; Introduction to Datapath.
Clock Design Adopted from David Harris of Harvey Mudd College.
RTL Hardware Design by P. Chu Chapter 161 Clock and Synchronization.
The Cost of Fixing Hold Time Violations in Sub-threshold Circuits Yanqing Zhang, Benton Calhoun University of Virginia Motivation and Background Power.
Packaging, testing and (good design practices) Jorgen Christiansen
Henry Hexmoor1 Chapter 7 Henry Hexmoor Registers and RTL.
Chapter 3 Continued Logic Gates Logic Chips Combinational Logic Sequential Logic Flip Flops Registers Memory Timing State Machines.
Asynchronous Machines
Programmable logic and FPGA
Chapter 01 An Overview of VLSI
Computer ArchitectureFall 2008 © August 20 th, Introduction to Computer Architecture Lecture 2 – Digital Logic Design.
Embedded Systems Hardware: Storage Elements; Finite State Machines; Sequential Logic.
Chapter #6: Sequential Logic Design 6.2 Timing Methodologies
Contemporary Logic Design Sequential Logic © R.H. Katz Transparency No Chapter #6: Sequential Logic Design Sequential Switching Networks.
Clock Noise in Sampled Data Systems Sampled Data System.
Counters and Registers
Digital Integrated Circuits for Communication
IC packaging and Input - output signals
Sequential Circuits Chapter 4 S. Dandamudi To be used with S. Dandamudi, “Fundamentals of Computer Organization and Design,” Springer,  S.
IPC Digital Circuits Digital circuits are composed of electronic components that can provide state information (1 or 0), as a function of.
IC Design methodology and Design styles J. Christiansen, CERN - EP/MIC
Sub- Nyquist Sampling System Hardware Implementation System Architecture Group – Shai & Yaron Data Transfer, System Integration and Debug Environment Part.
Digital Design Strategies and Techniques. Analog Building Blocks for Digital Primitives We implement logical devices with analog devices There is no magic.
Finite State Machines. Binary encoded state machines –The number of flip-flops is the smallest number m such that 2 m  n, where n is the number of states.
ASIC/FPGA design flow. FPGA Design Flow Detailed (RTL) Design Detailed (RTL) Design Ideas (Specifications) Design Ideas (Specifications) Device Programming.
Testing of integrated circuits and design for testability J. Christiansen CERN - EP/MIC
Basic digital logic J. Christiansen, CERN - EP/MIC
FPGA-Based System Design: Chapter 3 Copyright  2004 Prentice Hall PTR Topics n Latches and flip-flops. n RAMs and ROMs.
J. Christiansen, CERN - EP/MIC
Why Low Power Testing? 台大電子所 李建模.
Introduction to FPGA Created & Presented By Ali Masoudi For Advanced Digital Communication Lab (ADC-Lab) At Isfahan University Of technology (IUT) Department.
Topic: Sequential Circuit Course: Logic Design Slide no. 1 Chapter #6: Sequential Logic Design.
IC design Tools and Synthesis J. Christiansen, CERN - EP/MIC
CHAPTER 8 Developing Hard Macros The topics are: Overview Hard macro design issues Hard macro design process Physical design for hard macros Block integration.
1 Interconnect/Via. 2 Delay of Devices and Interconnect.
Reading Assignment: Rabaey: Chapter 9
Modern VLSI Design 3e: Chapter 7 Copyright  1998, 2002 Prentice Hall PTR Topics n Power/ground routing. n Clock routing. n Floorplanning tips. n Off-chip.
Bi-CMOS Prakash B.
CS/EE 3700 : Fundamentals of Digital System Design
Other Logic Implementations
Trends in IC technology and design J. Christiansen CERN - EP/MIC
Introduction to Field Programmable Gate Arrays Lecture 1/3 CERN Accelerator School on Digital Signal Processing Sigtuna, Sweden, 31 May – 9 June 2007 Javier.
03/31/031 ECE 551: Digital System Design & Synthesis Lecture Set 8 8.1: Miscellaneous Synthesis (In separate file) 8.2: Sequential Synthesis.
Integrated Microsystems Lab. EE372 VLSI SYSTEM DESIGNE. Yoon 1-1 Panorama of VLSI Design Fabrication (Chem, physics) Technology (EE) Systems (CS) Matel.
03/30/031 ECE Digital System Design & Synthesis Lecture Design Partitioning for Synthesis Strategies  Partition for design reuse  Keep related.
REGISTER TRANSFER LANGUAGE (RTL) INTRODUCTION TO REGISTER Registers1.
Processor Organization and Architecture Module III.
Copyright © 2001 Stephen A. Edwards All rights reserved Busses  Wires sometimes used as shared communication medium  Think “party-line telephone”  Bus.
Lecture 5: Design for Testability. CMOS VLSI DesignCMOS VLSI Design 4th Ed. 12: Design for Testability2 Outline  Testing –Logic Verification –Silicon.
THEMIS Instrument CDR 1 UCB, April 20, 2004 Actel Reliability Critical Design Review Robert Abiad University of California - Berkeley.
IC packaging and Input - output signals
Sequential Logic Design
REGISTER TRANSFER LANGUAGE (RTL)
Electronics for Physicists
332:437 Lecture 12 Finite State Machine Design
CSE 370 – Winter Sequential Logic - 1
Electronics for Physicists
Synchronous Digital Design Methodology and Guidelines
IC Design methodology and Design styles
Synchronous Digital Design Methodology and Guidelines
Presentation transcript:

Good design practices (What not to do) J. Christiansen, CERN - EP/MIC

December 2003J.Christiansen/CERN2 Purpose of good design practices Improve chance of chip working first time Reduce (total) design time Reduce development cost Improved reliability Improved production yield. Follow vendor rules to get standard guarantees. Some performance reduction may have to be accepted (Be smart but not to smart)

December 2003J.Christiansen/CERN3 Choice of technology Performance (speed, complexity) Design tools : Synthesis, P&R, etc. –Cost of required tools –Support for tools from which CAE tool supplier Libraries (gates, adders, RAM, ROM, PLL’s, PCI, ADC, etc.) Development costs –Full engineering run: NRE (several hundred thousand dollars) –Multi Project Wafer (MPW) Life time of technology –Modern CMOS only have a life time of ~5 years Production –Price as function of volume –Production testing

December 2003J.Christiansen/CERN4 Well planned design hierarchy The hierarchy of a design is the base for the whole design process. –Define logical functional blocks –Minimize connections between branches of hierarchy –Keep in mind that Hierarchy is going to be used for synthesis, simulation, Place & route, testing, etc. Define architecture in a top-down approach Evaluate implementation and performance of critical blocks to determine if architecture must be changed.

December 2003J.Christiansen/CERN5 Synchronous design All flip-flops clocked with same clock. Only use clocked flip-flops –no RS latches, cross coupled gates, J-K flip-flops, etc. No asynchronous state machines No self-timed circuits –Asynchronous self timed circuits receives increased interest but must be designed with great care. d q d q Logic Clock d q d q Logic Clock Sb Rb Q SbQ Q*Q* Legal transitions Race condition

December 2003J.Christiansen/CERN6 Clock gating Clock gating has the potential of significant power savings disabling clocks to functions not active. Clock gating introduces risk of malfunctions caused by glitches when enabling/disabling clock d q d q Clock Enable And Edge delayed Glitch Clock Enable Gated clock

December 2003J.Christiansen/CERN7 Clock distribution Even in synchronous designs, race conditions can occur if clock not properly distributed –Flip-flops have set-up and hold time restrictions –Clocks may not arrive at same time to different flip-flops. –Especially critical for shift registers where no logic delays exists between neighbor flip-flops. –Clock distribution must be very - very carefully designed and dummy logic may be needed between flip-flops. –Use of special clock tree generation tools as part of place and route d q d q d q d q Dummy delay X 10 X 20

December 2003J.Christiansen/CERN8 Example: Clock distribution in Alpha

December 2003J.Christiansen/CERN9 Resets A well defined scheme to initialize circuit is required. Insure no excessive power consumption of non initialized circuit Be careful with use power-on reset circuits (supply slew rate) Asynchronous resets must still be synchronized to clock to insure correct start when reset released Synchronous reset made by simple gating of input d q R Clock Reset Clock Reset Recovery time d q Reset Asynchronous reset Synchronous reset

December 2003J.Christiansen/CERN10 Interface to asynchronous world It is in many applications necessary to interface to circuits not running with the same clock. –Natural signals are asynchronous –Signals between different systems –Many chips today uses special internal clocks (e.g.. X 2,4,,) Asynchronous signals must be synchronized –Synchronizers are sensitive to meta-stability –Use double or triple synchronizers Reduces significantly meta-stability risk but never removes it completely d q Clock Async. Delay Time difference 0 Normal delay Time Voltage d q Clock Async.d q Double synchronizer Clock Data

December 2003J.Christiansen/CERN11 On-chip data busses Data busses are often required to exchange data between many functional units. –Insure that only one driver actively driving bus Also before chip have been properly initialized Bus drivers are often power full and a bus contention could be destructive. –Insure that bus is never left in a tri-state state. A floating bus may result in significant short circuit currents in receivers Always have one source driving the bus Use special bus retention generators. Bus contention control Bus retention In Vdd Ivdd Vin

December 2003J.Christiansen/CERN12 Power distribution Make conservative power distribution network –Power ring around core –Solid power routing between regions –Regular power stripes in standard cell regions Watch out for voltage drops in power lines between analog cells and their biasing network. Add on-chip decoupling capacitance in critical applications (can often be done below signal routing without loosing density) Careful analyses of electro-migration rules –If current density gets too high metal atoms may physically move perpendicular to current flow. –Special tools may be required

December 2003J.Christiansen/CERN13 Mixed signal designs Extreme care must be taken in mixed analog - digital integrated circuits to limit coupling to the sensitive analog part. A: Make digital logic that generates little noise –Use differential logic signals everywhere –Reduce slew rate of digital signals –Be careful with digital outputs which may inject noise into analog part (use if possible differential outputs) B: Make analog circuits with high noise immunity –Use differential analog circuits to reject common mode noise (CMRR) and power supply noise (PSRR) –Guard ring connected to ground around analog blocks Efficiency of this depends a lot on substrate type. General –Separate power supplies for analog and digital Best powering scheme for sensitive mixed signal designs depends strongly on used technology. –Separating grounds in a technology with strongly conducting substrate may make things worse –Separate test of analog and digital (scan path)

December 2003J.Christiansen/CERN14 Simulation Simulation is the most important tool to insure correct behavior of integrated circuits. –Circuit must be simulated in all possible operating modes Synthesis does not guarantee that no mistakes have been made in HDL source code ! –Digital simulator output should not only be checked by looking at waveforms Too easy to overlook small failure in long waveform display –Circuit must be simulated under all process and operating conditions (corner parameters) Best case: -20 deg., good process, Vdd + 10% x ~0.5 Typical:20 deg., typical process, Vddx 1.0 Worst case:100 deg., bad process, Vdd - 10%x ~2.0 Worst N - best P:NMOS bad process, PMOS good process (analog) Best N - worst P: NMOS good process, PMOS bad process (analog) Plus many other combinations of different device parameters (which combination is the worst for my circuit ?)

December 2003J.Christiansen/CERN15 Testing One can “never” put to much test facilities in chips. Put scan path where ever possible. Have special test outputs which can be used for monitoring of critical circuits. Put internal test pads on special tricky analog circuits. If in doubt about critical parameters of design make it programmable if possible. Do not forget about production testing. Do not make a redesign before problems with current version well understood. Most designs needs to have schemes to determine cause of bugs in first silicon.

December 2003J.Christiansen/CERN16 If you make IC design like this You may end up like this Or like this When something is wrong it is very hard to find the exact cause of the problem. Design changes are expensive and introduces significant delays I really hope mine works Relax Boss ! You know how hard it is to get it to work first time It’s not my fault that this stupid IC does not work Does this ensure working first silicon ?