Formal Equivalence Checking. Logic Verification
|
|
- Harriet Kennedy
- 6 years ago
- Views:
Transcription
1 Formal Equivalence Checking Logic Verification Verification of Test Gate RTL Full-chip functional verification Equivalence Checking Schematic Full-chip functional verification to verify the correctness of the design Equivalence checking to verify that actual implement = design Equivalence checking to make sure test model is appropriate Timing, Power, etc. Timing and power are analyzed at layout level Slide # 2
2 Boolean Equivalence Checking MEM MEM RTL Schematic Check for structural equivalence Require one-to-one latch correspondence» Partition design into independent combinational cone Verify each combinational logic cone independently Impose additional restrictions on custom design Slide # 3 Approaches Step Extract gate-level model from transistor-level schematics Explicit pattern matching + symbolic analysis Implicit symbolic simulation/analysis Step 2 Check equivalence between two (combinational) logic cones OBDD-based approach SAT-based approach Slide # 4 2 2
3 Spice Netlist Model Extraction? Gate Gate RTL Schematics Model extraction Symbolic boolean analysis + pattern matching Need to recognize precharge, self-timed circuitry, latches, sometimes even memory cells Need to find an acceptable gate-level model May not be exactly as what the original design intended Useful for testing as well Slide # 5 Symbolic Analysis For each CCC component consider all lines to the transistor gates as inputs consider all lines to the transistor gates in other components as outputs Steady state response given a set of input values, compute steady output values Each component behaves like an independent function block When extracting, we handle each component separately CCC Slide # 6 3 3
4 Symbolic Analysis of Transistor Network Inputs and node states can be symbols a symbol can be either 0 or if all inputs are symbols, we try to compute the boolean function given by the network f = ab+cd, etc. Basic idea: Develop the symbolic equation for every CCC Synthesize the equation into gate netlist Connect the netlists together to form the final circuit Slide # 7 Construct Gate Level Model Symbolic Boolean Analysis gives us for CCC Each output node as a boolean function of inputs Try to convert that function into Gates Gate primitives used AND, OR, NOT, MERGE, ENABLE Operate on a 4-value system 0,, Z, Apply heuristics to prune the gate level model Slide # 8 4 4
5 Construction Gate Level Model 2 0,, Z, Z means no value means conflicting values ENABLE Acts as an optimistic TSD Can use TSD instead The result will be pessimistic MERGE Acts as LUB 0 Z e a a a a b Z 0 Z 0 e Z 0 Z Z Z Z 0 0 Z Z b Z 0 Z Slide # 9 Pattern Matching + Path Enumeration Ex. GateMaker (IBM, Motorola) Preserve schematic structure better Classify circuit into 4 families Combinational Static Differential Cascode Voltage Switch Pass Gate Logic Dynamic Domino Recognize special design styles Keeper Feedback logic Slide # 0 5 5
6 Patterns F O O F G G F=G? F=G? A B Clk A B Slide # Suppose Extraction Works Spice Netlist EQ? Gate Gate RTL Schematics extraction synthesis EQ checker works on 2 gate level models Identify latch correspondences Incrementally prove permissible signal pairs Use ATPG, BDD, or both Slide # 2 6 6
7 Identify Correspondences which? Manually or automatically? Manually much overhead to the user Automatically -various heuristics are applied Identify a latch point Identify structural similarity Utilizes design information (hierarchy, names, etc.) Slide # 3 Checking EQ of 2 Logic Cones s-a-0??= ATPG-based approach To prove that the s-a-0 is a redundant fault Less memory constraint and hence, scale better (SAT-based approach) OBDD-based approach More memory constraint Slide # 4 7 7
8 Structural Similarity Helps?=?= Structural similarity allows EQ to proceed incrementally Divide and conquer Employ various heuristic to guess matching points Most EQ tools explore structural similarity to speed up the process Slide # 5 Local BDD can help a a Slide # 6 When proving a=a, the cones of logic may be very different ATPG approach becomes inefficient Similarity can t be found Use local BDDs BDDs based on internal points Local BDDs can quickly show the equivalence of a and a given that all supporting points are equivalent Proceed backward with a limited # of levels to search for local-bdd-based equivalent 8 8
9 BEQ IS Practical!! BEQ is practical Has been applied to full-chip μ-processors Commercially available BEQ check for strong equivalence; however Consistency may be enough Both behave the same in the care functional space Equivalence up to limited clock cycles may be enough BEQ will have its difficulty on memory designs when there is no structural similarity (on large and complex cones) when there is no -to- latch correspondence Slide # 7 Symbolic Simulation 9 9
10 0 0 Arrays Logic Logic Memory Core Logic Logic Custom design at transistor level Large in Size (Millions of Transistors) High-Performance Sequential Logic Examples: Cache, Tag, BAT, TLB, Regs, Status Array, etc. Slide # 9 Symbolic Simulation G I H 0 G F E 0 D E A B C F(A,B,C,D,E,F,G,H) CLK 0 Traditional 0/ vector simulation» Input 0/ vector; Results in 0/ Symbolic Simulation» Input arbitrary symbols; Results in logic functions (often represented as OBDDs)» Bounded by a constant number of clock cycles Slide # 20
11 Why It Is Good For Memories? Symbolic simulation of an address A = [a,a2,,an] with a data D = [d,d2,,dm] can cover all memory cells at once In contrast, imagine you perform 0/ simulation on a large memory block Today, an array easily has millions of cells Memories are often custom designs that contains sequential behavior Contain dynamic logic Hard to model at gate-level LEQ does not apply Slide # 2 Symbolic Trajectory Evaluation G I 0 F 0 D E F(D,E,F,G) when F (D,E,F,G) is true CLK 0 0 s at inputs are don t care s during simulation are don t know Allow more flexibility to partition functional space» Easy handling of tri-state buffers, bus, etc.» Improve symbolic simulation efficiency (simulate only the case functional space)» Bounded by certain clock cycles Slide # 22
12 2 2 Trajectory Evaluation Based on three-value logic: {0,,} A B State of this inverter is a 2-tuple <A,B> where both A,B can have a value in {0,,} 0 delay t=0 t= t=2 t=3 Assert: If A= then B=0 <A,B> <0,> <,0> <0,> A valid trajectory <A,B> <0,> <,0> <0,0> A valid trajectory <A,B> <0,> <,> <0,> An invalid trajectory This cannot be! Slide # 23 A B unit delay Correct Trajectory Assert: If (A is 0 from 0 to ) then (B= from to 2) Antecedent Consequent t=0 t= t=2 t=3 <A,B> <0,> <,> <,> <,> Weakest sequenct satisfying Antecedent <A,B> <0,> <,> <,> <,> Weakest satisfying trajectory <A,B> <,> <,> <,> <,> Weakest sequenct satisfying Consequent Note that:, and 0 Slide # 24
13 3 3 A B Incorrect Trajectory Assert: If (A is 0 from 0 to ) then (B= from to 2) Antecedent unit delay Consequent t=0 t= t=2 t=3 <A,B> <0,> <,> <,> <,> Weakest sequenct satisfying Antecedent <A,B> <0,> <,0> <,> <,> This doesn t hold <A,B> <,> <,> <,> <,> Weakest sequenct satisfying Consequent <,0> <,> Slide # 25 STE Assertion CLK G I 0 F E 0 D E A B C F(A,B,C,D,E,F,G) when F is true OBDD 0 0 Express each array operation as Antecedent => Consequent where Ant and Con are written in a functional language following a restricted linear time logic The number of assertions for a design may vary depending on the person who creates them Slide # 26
14 4 4 A Write Assertion Example Constant Control Values Symbolic Control Values Data D2 T0 Address A2 time T T0:Initialize Array[A]=D What to be seen? At time T, If (A = A2) then Array[A] = D2 else { Array[A] = D and Array[A2] = D2 } Describe how outputs behave based on symbolic controls during CLK high Describe output behavior during CLK low Slide # 27 STE Methodology Assertions manual RTL Gate Schematic STE Symbolic Simulation Engine Assertions capture the high level functionality RTL can be verified independently achieve both logic and functional verification w.r.t. the set of assertions Slide # 28
15 5 5 STE = EQ Assertions Automatic RTL Gate Schematic STE Symbolic Simulation Engine Extract assertions from RTL Do not verify RTL independently Provide a bounded-cycle sequential equivalence checking methodology Slide # 29 An Array Bit Cell C2 C decoded address 8 wl C C2 4 bl Bitline Data V DD Bitcell bl_pchg_b Data_b V DD blb Write enable C2 wen 9 Read enable din C iso 4 2 V DD V DD din_b Write enable from L latch Read enable from L2 latch dout latched in a L latch din and din_b from L latch Sense line sa pchg_b V DD V DD 4 4 unit delays saen 9 9 unit delays dout Slide # 30
16 6 6 Bit Cell Timing Diagram C C2 (L LATCH) Write enable (L2 LATCH) Read enable (L LATCH) din bl_pchg_b A pchg D_NEW 4 sa_pchg_b wl saen iso wen dout D_OLD (Bitcell) Data D_OLD D_NEW Slide # 3 TIME A Verification Example RTL model module(c,c2,ain,bin,cout) input Ain,Bin,C,C2; output Cout; wire and_out; reg A.L, A.L2, B.L,B.L2, C.L, C.L2 assign and_out = A.L2 & B.L2; or Ain or Bin or and_out) if (C) A.L = Ain; B.L = Bin; C.L = and_out; or A.L or B.L or C.L) if (C2) A.L2 = A.L; B.L2 = B.L; C.L2 = C.L; assign Cout = C.L2; D in E in RTL model Custom-built schemetic implementation D L L2 C C2 E L L2 C C2 Dl2 out El2 out V DD GND F y L L2 C C2 Fl2 out endmodule Slide # 32
17 7 7 Verifying The Schematic C2 t0t t2 t3- t4 t5 t6+ t8 t9 t3 t6 t7 C c Symbolic simulation Antecedent F.LSN D.L2 out E.L2 out F.LSN D.L2 out E.L2 out c c a b [ c & (a & b) (~c & c ) ] a b Derive C & (A&B) (~C & C) from the RTL automatically Consequent F.LSN Check for [ c & (a & b) (~c & c ) ] Slide # 33 Overall Verification Strategy Read enable Write enable C clock Address Data in Read/write control logic Address decode logic Data conditioning logic m rows n columns Bitcell matrix Sense-amp outputs column MU Primary outputs Feedback Address (log n + log m) Row address Row log n decoder log m Column address Read enable Write enable C clock Data in n Column Decoder m Carefully timed read and write control logic and data conditioning Array control signals To column MU To word lines WL s from row decoder D in wl0 wl Selects from column decoder col0 Bitcell Bitcell Sense amp Column mux col Bitcell Bitcell Sense amp Primary Outputs coln Bitlines Combined read and write port Word line Bitcell Bitline Slide # 34
18 8 8 Results Motorola Versys2 Array block Bit cells es Control logic transistors Assertions runtime (hrs) A 73,728,346 69,000 2 B 24,576,62 87, C 3, , D 24, , E 3, , F 88, , G 50, ,000 2 Validation time H 7, , Array block (person-months) Discrepancies I 2,824,92 27, A 3 4 J, , B 3 6 K 4, , C 3 5 L 8,52 0 8, D 3 5 M , E 3 9 N 52 0,250 2 F 2 6 O 2, ,400 2 G 2 5 P 4,92 0 6, H 3 4 I 2 2 J K 2 4 L 2 5 M 2 5 N 3 O 0 P 2 Slide # 35 In Summary Symbolic simulation is efficient for embedded array verification Symbolic addressing covers all space at once Can be used for both logic and functional verification (for array blocks) Has been applied to very large array designs in practice The methodology is not as rigorous as LEQ LEQ checks for strong equivalence Symbolic simulation checks for consistency based on a pre-defined range of clock cycles Slide # 36
ESE370: Circuit-Level Modeling, Design, and Optimization for Digital Systems
ESE370: Circuit-Level Modeling, Design, and Optimization for Digital Systems Lec 26: November 9, 2018 Memory Overview Dynamic OR4! Precharge time?! Driving input " With R 0 /2 inverter! Driving inverter
More information! Memory. " RAM Memory. " Serial Access Memories. ! Cell size accounts for most of memory array size. ! 6T SRAM Cell. " Used in most commercial chips
ESE 57: Digital Integrated Circuits and VLSI Fundamentals Lec : April 5, 8 Memory: Periphery circuits Today! Memory " RAM Memory " Architecture " Memory core " SRAM " DRAM " Periphery " Serial Access Memories
More informationLecture 13: SRAM. Slides courtesy of Deming Chen. Slides based on the initial set from David Harris. 4th Ed.
Lecture 13: SRAM Slides courtesy of Deming Chen Slides based on the initial set from David Harris CMOS VLSI Design Outline Memory Arrays SRAM Architecture SRAM Cell Decoders Column Circuitry Multiple Ports
More informationLecture 11 SRAM Zhuo Feng. Z. Feng MTU EE4800 CMOS Digital IC Design & Analysis 2010
EE4800 CMOS Digital IC Design & Analysis Lecture 11 SRAM Zhuo Feng 11.1 Memory Arrays SRAM Architecture SRAM Cell Decoders Column Circuitryit Multiple Ports Outline Serial Access Memories 11.2 Memory Arrays
More informationSynthesis of Combinational and Sequential Circuits with Verilog
Synthesis of Combinational and Sequential Circuits with Verilog What is Verilog? Hardware description language: Are used to describe digital system in text form Used for modeling, simulation, design Two
More informationMemory. Outline. ECEN454 Digital Integrated Circuit Design. Memory Arrays. SRAM Architecture DRAM. Serial Access Memories ROM
ECEN454 Digital Integrated Circuit Design Memory ECEN 454 Memory Arrays SRAM Architecture SRAM Cell Decoders Column Circuitry Multiple Ports DRAM Outline Serial Access Memories ROM ECEN 454 12.2 1 Memory
More informationMark Redekopp, All rights reserved. EE 352 Unit 10. Memory System Overview SRAM vs. DRAM DMA & Endian-ness
EE 352 Unit 10 Memory System Overview SRAM vs. DRAM DMA & Endian-ness The Memory Wall Problem: The Memory Wall Processor speeds have been increasing much faster than memory access speeds (Memory technology
More informationIntroduction to CMOS VLSI Design Lecture 13: SRAM
Introduction to CMOS VLSI Design Lecture 13: SRAM David Harris Harvey Mudd College Spring 2004 1 Outline Memory Arrays SRAM Architecture SRAM Cell Decoders Column Circuitry Multiple Ports Serial Access
More informationCS250 VLSI Systems Design Lecture 9: Memory
CS250 VLSI Systems esign Lecture 9: Memory John Wawrzynek, Jonathan Bachrach, with Krste Asanovic, John Lazzaro and Rimas Avizienis (TA) UC Berkeley Fall 2012 CMOS Bistable Flip State 1 0 0 1 Cross-coupled
More informationSRAM. Introduction. Digital IC
SRAM Introduction Outline Memory Arrays SRAM Architecture SRAM Cell Decoders Column Circuitry Multiple Ports Serial Access Memories Memory Arrays Memory Arrays Random Access Memory Serial Access Memory
More informationCENG 4480 L09 Memory 2
CENG 4480 L09 Memory 2 Bei Yu Reference: Chapter 11 Memories CMOS VLSI Design A Circuits and Systems Perspective by H.E.Weste and D.M.Harris 1 v.s. CENG3420 CENG3420: architecture perspective memory coherent
More informationEECS 219C: Formal Methods Binary Decision Diagrams (BDDs) Sanjit A. Seshia EECS, UC Berkeley
EECS 219C: Formal Methods Binary Decision Diagrams (BDDs) Sanjit A. Seshia EECS, UC Berkeley Boolean Function Representations Syntactic: e.g.: CNF, DNF (SOP), Circuit Semantic: e.g.: Truth table, Binary
More information101-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 informationDesign for Testability
Design for Testability Sungho Kang Yonsei University Outline Introduction Testability Measure Design for Testability Ad-Hoc Testable Design Conclusion 2 Merging Design and Test Design and Test become closer
More informationECE 2300 Digital Logic & Computer Organization
ECE 2300 Digital Logic & Computer Organization Spring 201 Memories Lecture 14: 1 Announcements HW6 will be posted tonight Lab 4b next week: Debug your design before the in-lab exercise Lecture 14: 2 Review:
More informationDigital Integrated Circuits Lecture 13: SRAM
Digital Integrated Circuits Lecture 13: SRAM Chih-Wei Liu VLSI Signal Processing LAB National Chiao Tung University cwliu@twins.ee.nctu.edu.tw DIC-Lec13 cwliu@twins.ee.nctu.edu.tw 1 Outline Memory Arrays
More information1/28/2013. Synthesis. The Y-diagram Revisited. Structural Behavioral. More abstract designs Physical. CAD for VLSI 2
Synthesis The Y-diagram Revisited Structural Behavioral More abstract designs Physical CAD for VLSI 2 1 Structural Synthesis Behavioral Physical CAD for VLSI 3 Structural Processor Memory Bus Behavioral
More informationAdvanced VLSI Design Prof. Virendra K. Singh Department of Electrical Engineering Indian Institute of Technology Bombay
Advanced VLSI Design Prof. Virendra K. Singh Department of Electrical Engineering Indian Institute of Technology Bombay Lecture 40 VLSI Design Verification: An Introduction Hello. Welcome to the advance
More informationSpiral 2-8. Cell Layout
2-8.1 Spiral 2-8 Cell Layout 2-8.2 Learning Outcomes I understand how a digital circuit is composed of layers of materials forming transistors and wires I understand how each layer is expressed as geometric
More informationproblem maximum score 1 10pts 2 8pts 3 10pts 4 12pts 5 7pts 6 7pts 7 7pts 8 17pts 9 22pts total 100pts
University of California at Berkeley College of Engineering epartment of Electrical Engineering and Computer Sciences EECS150 J. Wawrzynek Spring 2003 2/21/03 Exam I Solutions Name: I number: This is a
More informationSemiconductor Memory Classification. Today. ESE 570: Digital Integrated Circuits and VLSI Fundamentals. CPU Memory Hierarchy.
ESE 57: Digital Integrated Circuits and VLSI Fundamentals Lec : April 4, 7 Memory Overview, Memory Core Cells Today! Memory " Classification " ROM Memories " RAM Memory " Architecture " Memory core " SRAM
More informationMemory Arrays. Array Architecture. Chapter 16 Memory Circuits and Chapter 12 Array Subsystems from CMOS VLSI Design by Weste and Harris, 4 th Edition
Chapter 6 Memory Circuits and Chapter rray Subsystems from CMOS VLSI Design by Weste and Harris, th Edition E E 80 Introduction to nalog and Digital VLSI Paul M. Furth New Mexico State University Static
More informationEE577b. Register File. By Joong-Seok Moon
EE577b Register File By Joong-Seok Moon Register File A set of registers that store data Consists of a small array of static memory cells Smallest size and fastest access time in memory hierarchy (Register
More information1 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 informationDeep Sub-Micron Cache Design
Cache Design Challenges in Deep Sub-Micron Process Technologies L2 COE Carl Dietz May 25, 2007 Deep Sub-Micron Cache Design Agenda Bitcell Design Array Design SOI Considerations Surviving in the corporate
More informationRIZALAFANDE CHE ISMAIL TKT. 3, BLOK A, PPK MIKRO-e KOMPLEKS PENGAJIAN KUKUM. SYNTHESIS OF COMBINATIONAL LOGIC (Chapter 8)
RIZALAFANDE CHE ISMAIL TKT. 3, BLOK A, PPK MIKRO-e KOMPLEKS PENGAJIAN KUKUM SYNTHESIS OF COMBINATIONAL LOGIC (Chapter 8) HDL-BASED SYNTHESIS Modern ASIC design use HDL together with synthesis tool to create
More informationCombinational Equivalence Checking
Combinational Equivalence Checking Virendra Singh Associate Professor Computer Architecture and Dependable Systems Lab. Dept. of Electrical Engineering Indian Institute of Technology Bombay viren@ee.iitb.ac.in
More informationSemiconductor Memory Classification
ESE37: Circuit-Level Modeling, Design, and Optimization for Digital Systems Lec 6: November, 7 Memory Overview Today! Memory " Classification " Architecture " Memory core " Periphery (time permitting)!
More informationCMOS VLSI Design. MIPS Processor Example. Outline
COS VLSI Design IPS Processor Example Outline Design Partitioning IPS Processor Example Architecture icroarchitecture Logic Design Circuit Design Physical Design Fabrication, Packaging, Testing Slide 2
More informationEE 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 informationVLSI System Design Part II : Logic Synthesis (1) Oct Feb.2007
VLSI System Design Part II : Logic Synthesis (1) Oct.2006 - Feb.2007 Lecturer : Tsuyoshi Isshiki Dept. Communications and Integrated Systems, Tokyo Institute of Technology isshiki@vlsi.ss.titech.ac.jp
More informationCOE 561 Digital System Design & Synthesis Introduction
1 COE 561 Digital System Design & Synthesis Introduction Dr. Aiman H. El-Maleh Computer Engineering Department King Fahd University of Petroleum & Minerals Outline Course Topics Microelectronics Design
More informationWhere We Are in This Course Right Now. ECE 152 Introduction to Computer Architecture. This Unit: Caches and Memory Hierarchies.
Introduction to Computer Architecture Caches and emory Hierarchies Copyright 2012 Daniel J. Sorin Duke University Slides are derived from work by Amir Roth (Penn) and Alvin Lebeck (Duke) Spring 2012 Where
More informationColumn decoder using PTL for memory
IOSR Journal of Electronics and Communication Engineering (IOSR-JECE) e-issn: 2278-2834,p- ISSN: 2278-8735. Volume 5, Issue 4 (Mar. - Apr. 2013), PP 07-14 Column decoder using PTL for memory M.Manimaraboopathy
More informationEECS150 - Digital Design Lecture 5 - Verilog Logic Synthesis
EECS150 - Digital Design Lecture 5 - Verilog Logic Synthesis Jan 31, 2012 John Wawrzynek Spring 2012 EECS150 - Lec05-verilog_synth Page 1 Outline Quick review of essentials of state elements Finite State
More information10/24/2016. Let s Name Some Groups of Bits. ECE 120: Introduction to Computing. We Just Need a Few More. You Want to Use What as Names?!
University of Illinois at Urbana-Champaign Dept. of Electrical and Computer Engineering ECE 120: Introduction to Computing Memory Let s Name Some Groups of Bits I need your help. The computer we re going
More informationWriting Circuit Descriptions 8
8 Writing Circuit Descriptions 8 You can write many logically equivalent descriptions in Verilog to describe a circuit design. However, some descriptions are more efficient than others in terms of the
More informationBOOSTER: Speeding Up RTL Property Checking of Digital Designs by Word-Level Abstraction
BOOSTER: Speeding Up RTL Property Checking of Digital Designs by Word-Level Abstraction Peer Johannsen Siemens AG, Corporate Technology, Design Automation, CT SE 4 81730 Munich, Germany peer.johannsen@mchp.siemens.de
More informationVerilog. What is Verilog? VHDL vs. Verilog. Hardware description language: Two major languages. Many EDA tools support HDL-based design
Verilog What is Verilog? Hardware description language: Are used to describe digital system in text form Used for modeling, simulation, design Two major languages Verilog (IEEE 1364), latest version is
More informationControl and Datapath 8
Control and Datapath 8 Engineering attempts to develop design methods that break a problem up into separate steps to simplify the design and increase the likelihood of a correct solution. Digital system
More informationMarrying Formal Methods With Simulation-Based Verification Function Verification Research at UCSB. Tim Cheng & Li-C. Wang UC-Santa Barbara
Marrying Formal Methods With Simulation-Based Verification Function Verification Research at UCSB Tim Cheng & Li-C. Wang UC-Santa Barbara 1 Outline Current Issues in Functional Verification Functional
More informationLearning Outcomes. Spiral 2-9. Typical Logic Gate TRI-STATE GATES
2-9.1 Learning Outcomes 2-9.2 Spiral 2-9 Tri-State Gates Memories DMA I understand how a tri-state works and the rules for using them to share a bus I understand how SRAM and DRAM cells perform reads and
More informationSpiral 2-9. Tri-State Gates Memories DMA
2-9.1 Spiral 2-9 Tri-State Gates Memories DMA 2-9.2 Learning Outcomes I understand how a tri-state works and the rules for using them to share a bus I understand how SRAM and DRAM cells perform reads and
More informationAnnouncements. Midterm 2 next Thursday, 6-7:30pm, 277 Cory Review session on Tuesday, 6-7:30pm, 277 Cory Homework 8 due next Tuesday Labs: project
- Fall 2002 Lecture 20 Synthesis Sequential Logic Announcements Midterm 2 next Thursday, 6-7:30pm, 277 Cory Review session on Tuesday, 6-7:30pm, 277 Cory Homework 8 due next Tuesday Labs: project» Teams
More informationChapter 10. case studies in sequential logic design
Chapter. case studies in sequential logic design This is the last chapter of this course. So far, we have designed several sequential systems. What is the general procedure? The most difficult part would
More informationCS152 Computer Architecture and Engineering Lecture 16: Memory System
CS152 Computer Architecture and Engineering Lecture 16: System March 15, 1995 Dave Patterson (patterson@cs) and Shing Kong (shing.kong@eng.sun.com) Slides available on http://http.cs.berkeley.edu/~patterson
More informationIntroduction to SRAM. Jasur Hanbaba
Introduction to SRAM Jasur Hanbaba Outline Memory Arrays SRAM Architecture SRAM Cell Decoders Column Circuitry Non-volatile Memory Manufacturing Flow Memory Arrays Memory Arrays Random Access Memory Serial
More informationChapter 5B. Large and Fast: Exploiting Memory Hierarchy
Chapter 5B Large and Fast: Exploiting Memory Hierarchy One Transistor Dynamic RAM 1-T DRAM Cell word access transistor V REF TiN top electrode (V REF ) Ta 2 O 5 dielectric bit Storage capacitor (FET gate,
More informationAccuCore SPICE Accurate Core Characterization with STA. Silvaco Japan Technology Seminar Spring 2007
AccuCore SPICE Accurate Core Characterization with STA Silvaco Japan Technology Seminar Spring 2007 What is AccuCore? Why would I use it? AccuCore performs automatic block SPICE characterization and Static
More informationTopics. Midterm Finish Chapter 7
Lecture 9 Topics Midterm Finish Chapter 7 ROM (review) Memory device in which permanent binary information is stored. Example: 32 x 8 ROM Five input lines (2 5 = 32) 32 outputs, each representing a memory
More information3. Formal Equivalence Checking
3. Formal Equivalence Checking 1 3. Formal Equivalence Checking Jacob Abraham Department of Electrical and Computer Engineering The University of Texas at Austin Verification of Digital Systems Spring
More informationLecture 15: System Modeling and Verilog
Lecture 15: System Modeling and Verilog Slides courtesy of Deming Chen Intro. VLSI System Design Outline Outline Modeling Digital Systems Introduction to Verilog HDL Use of Verilog HDL in Synthesis Reading
More information+1 (479)
Memory Courtesy of Dr. Daehyun Lim@WSU, Dr. Harris@HMC, Dr. Shmuel Wimer@BIU and Dr. Choi@PSU http://csce.uark.edu +1 (479) 575-6043 yrpeng@uark.edu Memory Arrays Memory Arrays Random Access Memory Serial
More informationVHDL Sample Slides Rev Sample Slides from the 2-day and 4-day VHDL Training Courses
VHDL Sample Slides from the 2-day and 4-day VHDL Training Courses Rev. 4.7 VHDL 2011 TM Associates, Inc. 1-1 These sample slides are taken from the 4-day basic VHDL training course. They are from a variety
More informationTopic 21: Memory Technology
Topic 21: Memory Technology COS / ELE 375 Computer Architecture and Organization Princeton University Fall 2015 Prof. David August 1 Old Stuff Revisited Mercury Delay Line Memory Maurice Wilkes, in 1947,
More informationTopic 21: Memory Technology
Topic 21: Memory Technology COS / ELE 375 Computer Architecture and Organization Princeton University Fall 2015 Prof. David August 1 Old Stuff Revisited Mercury Delay Line Memory Maurice Wilkes, in 1947,
More informationSynthesis of Language Constructs. 5/10/04 & 5/13/04 Hardware Description Languages and Synthesis
Synthesis of Language Constructs 1 Nets Nets declared to be input or output ports are retained Internal nets may be eliminated due to logic optimization User may force a net to exist trireg, tri0, tri1
More informationIntroduction to synthesis. Logic Synthesis
Introduction to synthesis Lecture 5 Logic Synthesis Logic synthesis operates on boolean equations and produce optimized combinational logic Logic Minimization Two-level logic minimization Two-level logic
More informationSynthesizable 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 informationVHDL: RTL Synthesis Basics. 1 of 59
VHDL: RTL Synthesis Basics 1 of 59 Goals To learn the basics of RTL synthesis. To be able to synthesize a digital system, given its VHDL model. To be able to relate VHDL code to its synthesized output.
More informationENEE 759H, Spring 2005 Memory Systems: Architecture and
SLIDE, Memory Systems: DRAM Device Circuits and Architecture Credit where credit is due: Slides contain original artwork ( Jacob, Wang 005) Overview Processor Processor System Controller Memory Controller
More informationHomework deadline extended to next friday
Norm Midterm Grading Finished Stats on course homepage Pickup after this lab lec. Regrade requests within 1wk of posted solution Homework deadline extended to next friday Description Design Conception
More informationHIERARCHICAL DESIGN. RTL Hardware Design by P. Chu. Chapter 13 1
HIERARCHICAL DESIGN Chapter 13 1 Outline 1. Introduction 2. Components 3. Generics 4. Configuration 5. Other supporting constructs Chapter 13 2 1. Introduction How to deal with 1M gates or more? Hierarchical
More informationOutline HIERARCHICAL DESIGN. 1. Introduction. Benefits of hierarchical design
Outline HIERARCHICAL DESIGN 1. Introduction 2. Components 3. Generics 4. Configuration 5. Other supporting constructs Chapter 13 1 Chapter 13 2 1. Introduction How to deal with 1M gates or more? Hierarchical
More informationData Cache Final Project Report ECE251: VLSI Systems Design UCI Spring, 2000
June 15, 2000 Data Cache Final Project Report ECE251: VLSI Systems Design UCI Spring, 2000 Jinfeng Liu Yi Deng ID: 65547013 (jinfengl@ece.uci.edu) ID: 57434732 (dengy@ece.uci.edu) Project Summary In this
More informationPROGRAMMABLE MODULES SPECIFICATION OF PROGRAMMABLE COMBINATIONAL AND SEQUENTIAL MODULES
PROGRAMMABLE MODULES SPECIFICATION OF PROGRAMMABLE COMBINATIONAL AND SEQUENTIAL MODULES. psa. rom. fpga THE WAY THE MODULES ARE PROGRAMMED NETWORKS OF PROGRAMMABLE MODULES EXAMPLES OF USES Programmable
More informationCHAPTER 12 ARRAY SUBSYSTEMS [ ] MANJARI S. KULKARNI
CHAPTER 2 ARRAY SUBSYSTEMS [2.4-2.9] MANJARI S. KULKARNI OVERVIEW Array classification Non volatile memory Design and Layout Read-Only Memory (ROM) Pseudo nmos and NAND ROMs Programmable ROMS PROMS, EPROMs,
More informationPractical Formal Verification using BDDs & SAT
Practical Formal Verification using BDDs & SAT Carl Seger September 21, 2016 Formal Verification in Theory Reference model verification: Create an abstract state representation Define an abstract next-state
More informationChapter 6 (Lect 3) Counters Continued. Unused States Ring counter. Implementing with Registers Implementing with Counter and Decoder
Chapter 6 (Lect 3) Counters Continued Unused States Ring counter Implementing with Registers Implementing with Counter and Decoder Sequential Logic and Unused States Not all states need to be used Can
More informationCMSC 611: Advanced Computer Architecture
CMSC 611: Advanced Computer Architecture Design Languages Practically everything adapted from slides by Peter J. Ashenden, VHDL Quick Start Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr
More informationSRAMs to Memory. Memory Hierarchy. Locality. Low Power VLSI System Design Lecture 10: Low Power Memory Design
SRAMs to Memory Low Power VLSI System Design Lecture 0: Low Power Memory Design Prof. R. Iris Bahar October, 07 Last lecture focused on the SRAM cell and the D or D memory architecture built from these
More informationECE 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 informationMemory and Programmable Logic
Memory and Programmable Logic Memory units allow us to store and/or retrieve information Essentially look-up tables Good for storing data, not for function implementation Programmable logic device (PLD),
More informationMemory System Overview. DMA & Endian-ness. Technology. Architectural. Problem: The Memory Wall
The Memory Wall EE 357 Unit 13 Problem: The Memory Wall Processor speeds have been increasing much faster than memory access speeds (Memory technology targets density rather than speed) Large memories
More informationViews of Memory. Real machines have limited amounts of memory. Programmer doesn t want to be bothered. 640KB? A few GB? (This laptop = 2GB)
CS6290 Memory Views of Memory Real machines have limited amounts of memory 640KB? A few GB? (This laptop = 2GB) Programmer doesn t want to be bothered Do you think, oh, this computer only has 128MB so
More informationSystem Synthesis of Digital Systems
System Synthesis Introduction 1 System Synthesis of Digital Systems Petru Eles, Zebo Peng System Synthesis Introduction 2 Literature: Introduction P. Eles, K. Kuchcinski and Z. Peng "System Synthesis with
More informationCSEE 3827: Fundamentals of Computer Systems. Storage
CSEE 387: Fundamentals of Computer Systems Storage The big picture General purpose processor (e.g., Power PC, Pentium, MIPS) Internet router (intrusion detection, pacet routing, etc.) WIreless transceiver
More informationECEN 449 Microprocessor System Design. Memories. Texas A&M University
ECEN 449 Microprocessor System Design Memories 1 Objectives of this Lecture Unit Learn about different types of memories SRAM/DRAM/CAM Flash 2 SRAM Static Random Access Memory 3 SRAM Static Random Access
More informationUnit 4: Formal Verification
Course contents Unit 4: Formal Verification Logic synthesis basics Binary-decision diagram (BDD) Verification Logic optimization Technology mapping Readings Chapter 11 Unit 4 1 Logic Synthesis & Verification
More informationWhat is Verilog HDL? Lecture 1: Verilog HDL Introduction. Basic Design Methodology. What is VHDL? Requirements
What is Verilog HDL? Lecture 1: Verilog HDL Introduction Verilog Hardware Description Language(HDL)? A high-level computer language can model, represent and simulate digital design Hardware concurrency
More informationDigital Design Methodology (Revisited) Design Methodology: Big Picture
Digital Design Methodology (Revisited) Design Methodology Design Specification Verification Synthesis Technology Options Full Custom VLSI Standard Cell ASIC FPGA CS 150 Fall 2005 - Lec #25 Design Methodology
More informationC-Based Hardware Design
LECTURE 6 In this lecture we will introduce: The VHDL Language and its benefits. The VHDL entity Concurrent and Sequential constructs Structural design. Hierarchy Packages Various architectures Examples
More informationCertitude Functional Qualification with Formal Verification. Jean-Marc Forey November 2012
Certitude Functional Qualification with Formal Verification Jean-Marc Forey November 2012 Springsoft Proprietary Topics Case study presentation Why Verification Verification efficiency Formal verification
More informationCpE 442. Memory System
CpE 442 Memory System CPE 442 memory.1 Outline of Today s Lecture Recap and Introduction (5 minutes) Memory System: the BIG Picture? (15 minutes) Memory Technology: SRAM and Register File (25 minutes)
More informationCOMP12111 Fundamentals of Computer Engineering Paul Nutter Vasilis Pavlidis Comments
Fundamentals of Computer Engineering Paul Nutter Vasilis Pavlidis Comments Please see the attached report. 12 February 2016 Page 2 of 7 Exam Feedback 2015/16 Q1 set by Paul Nutter Q2 set by Vasilis Pavlidis
More informationLogic Synthesis. EECS150 - Digital Design Lecture 6 - Synthesis
Logic Synthesis Verilog and VHDL started out as simulation languages, but quickly people wrote programs to automatically convert Verilog code into low-level circuit descriptions (netlists). EECS150 - Digital
More informationEEC 483 Computer Organization
EEC 483 Computer Organization Chapter 5 Large and Fast: Exploiting Memory Hierarchy Chansu Yu Table of Contents Ch.1 Introduction Ch. 2 Instruction: Machine Language Ch. 3-4 CPU Implementation Ch. 5 Cache
More information08 - Address Generator Unit (AGU)
October 2, 2014 Todays lecture Memory subsystem Address Generator Unit (AGU) Schedule change A new lecture has been entered into the schedule (to compensate for the lost lecture last week) Memory subsystem
More informationFundamental Design Concepts. Fundamental Concepts. Modeling Domains. Basic Definitions. New terminology and overloaded use of common words
Fundamental Design Concepts Fundamental Concepts Basic Definitions study now revisit later New terminology and overloaded use of common words Modeling Domains Structural Domain a domain in which a component
More informationLecture 3 Introduction to VHDL
CPE 487: Digital System Design Spring 2018 Lecture 3 Introduction to VHDL Bryan Ackland Department of Electrical and Computer Engineering Stevens Institute of Technology Hoboken, NJ 07030 1 Managing Design
More informationIntroduction to Verilog/System Verilog
NTUEE DCLAB Feb. 27, 2018 Introduction to Verilog/System Verilog Presenter: Yao-Pin Wang 王耀斌 Advisor: Prof. Chia-Hsiang Yang 楊家驤 Dept. of Electrical Engineering, NTU National Taiwan University What is
More informationDigital Design Methodology
Digital Design Methodology Prof. Soo-Ik Chae Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008, John Wiley 1-1 Digital Design Methodology (Added) Design Methodology Design Specification
More informationHardware Design Environments. Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University
Hardware Design Environments Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University Outline Welcome to COE 405 Digital System Design Design Domains and Levels of Abstractions Synthesis
More informationLab #1: Introduction to Design Methodology with FPGAs part 1 (80 pts)
Nate Pihlstrom, npihlstr@uccs.edu Lab #1: Introduction to Design Methodology with FPGAs part 1 (80 pts) Objective The objective of this lab assignment is to introduce and use a methodology for designing
More informationEE-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 informationLab. Course Goals. Topics. What is VLSI design? What is an integrated circuit? VLSI Design Cycle. VLSI Design Automation
Course Goals Lab Understand key components in VLSI designs Become familiar with design tools (Cadence) Understand design flows Understand behavioral, structural, and physical specifications Be able to
More informationChoosing an Intellectual Property Core
Choosing an Intellectual Property Core MIPS Technologies, Inc. June 2002 One of the most important product development decisions facing SOC designers today is choosing an intellectual property (IP) core.
More informationEvolution of Implementation Technologies. ECE 4211/5211 Rapid Prototyping with FPGAs. Gate Array Technology (IBM s) Programmable Logic
ECE 42/52 Rapid Prototyping with FPGAs Dr. Charlie Wang Department of Electrical and Computer Engineering University of Colorado at Colorado Springs Evolution of Implementation Technologies Discrete devices:
More informationPOWER ANALYSIS RESISTANT SRAM
POWER ANALYSIS RESISTANT ENGİN KONUR, TÜBİTAK-UEKAE, TURKEY, engin@uekae.tubitak.gov.tr YAMAN ÖZELÇİ, TÜBİTAK-UEKAE, TURKEY, yaman@uekae.tubitak.gov.tr EBRU ARIKAN, TÜBİTAK-UEKAE, TURKEY, ebru@uekae.tubitak.gov.tr
More informationEEL 4783: HDL in Digital System Design
EEL 4783: HDL in Digital System Design Lecture 15: Logic Synthesis with Verilog Prof. Mingjie Lin 1 Verilog Synthesis Synthesis vs. Compilation Descriptions mapped to hardware Verilog design patterns for
More information