Lecture 11 Logic Synthesis, Part 2

2y ago
28 Views
3 Downloads
284.28 KB
21 Pages
Last View : 12d ago
Last Download : 3m ago
Upload by : Emanuel Batten
Transcription

Lecture 11Logic Synthesis, Part 2Xuan ‘Silvia’ ZhangWashington University in St. Louishttp://classes.engineering.wustl.edu/ese461/

Write Synthesizable Code Use meaningful names for signals and variables Don't mix level and edge sensitive elements in the same alwaysblock Avoid mixing positive and negative edge-triggered flip-flops Use parentheses to optimize logic structure Use continuous assign statements for simple combo logic Use nonblocking for sequential and blocking for combo logic Don't mix blocking and nonblocking assignments in the samealways block (even if Design compiler supports them!!). Be careful with multiple assignments to the same variable Define if-else or case statements explicitly2

Memory Synthesis Random logic using flip-flops or latches– use large vector or arrays in HDLs– inefficient in areas and performance– e.g.: a flip-flop takes up to 10 to 20 times area of a 6TSRAM cell Register files in datapaths– synthesized to a datapath component– dependent on software tool and technology Memory compilers– most area-efficient and high-performance solution– foundry, tool, or 3rd party provider3

OutlineWrite Synthesizable CodeWrite Synthesis Script4

Design Flow of Synthesis Set search paths and timing libraryLoad HDL filePerform elaborationApply ConstraintsApply Optimization settingsSynthesisAnalysis for constraintsExport DesignNetlist and SDC19

20

Design Flow of Synthesis Set search paths– search path– This is the search path for source files and also the thetechnology library files Use set command– set search path path – where path is the full path of your target library,script, or HDL file locations. analyze– Will translates HDL to intermediate format read verilog– Will do the job of analyze and elaborate21

Design Flow of Synthesis Performing Elaboration––––elaborateBuilds data structuresInfers registers and latches in the designPerforms high-level HDL optimization, such as dead coderemoval– Checks semantics: meaning of sub blocks22

Design Flow of Synthesis Applying Constraints The constraints include– Operating conditions– Clock waveforms– I/O timing You can apply constraints in several ways– Type them manually in the RTL Compiler shell– Include a constraints file– Read in SDC constraints Two types of constraint– Design Rule Check– Optimization Constraints23

Design Flow of Synthesis Applying Optimization Constraints––––DRCTimingPowerArea You can perform any of the followingoptimizations––––Remove designer-created hierarchies (ungrouping)Create additional hierarchies (grouping)Synthesize a sub-designCreate custom cost groups for paths in the design tochange the synthesis cost function24

Design Flow of Synthesis compile ultra– Optimization on full design and completepaths– Usually gives best optimization result– No iteration required– Simpler constraints– Simpler data management– More processing required– More memory required11

Design Flow of Synthesis Reports– Timing: any violation in the timing reportsleads to error. Usually solved by operating atlower clock frequencies– Area: the rough cell area report beforemaking place and route– Power: depends on the operating conditions.Some Technology libraries provide WCCOMoption for simulating at worst case conditions– Design: overview of the whole simulation inDC compiler12

Synopsys Design Constraints (SDC) Specify the design intent, including the timing,power, and area constraints for a design SDC is Tcl based Information in the SDC––––The SDC version (optional)The SDC units (optional)The Design ConstraintsComments (optional)27

Synopsys Design Constraints SDC version:– Variable name: sdc version– e.g.: set sdc version 1.9 SDC Units– Command name: set units– Specify units for capacitance, resistance, time,voltage, current, and power– e.g.: set units –capacitance 1pF– e.g.: set units –time 1ns28

Synopsys Design Constraints29

Synopsys Design Constraints30

Synopsys Design Constraints31

Synopsys Design Constraints create clock–––––NamePeriodWaveform[get ports {}]e.g.: create clock –name “clk” –add –period 500.0 –waveform {0, 250} [get ports{clk}]32

Technology Library files db file– the actual information about the cells used in thelinking sdb file– information about the symbols used for the cells in thestandard cell library– used in the process of P&R because we can see theblack boxes instead of the gate level logic. LEF file– related to the P&R tools– layout exchange file which has information regardingno of layers of metal used or available for P&R.19

Lab #4: Dual-Clock FIFO Due 10/19 (Wednesday) Cross different clock domains– handshake signaling– asynchronous first-in-first-out buffer (FIFO) FIFO– two interfaces– two clocks– one for write, one for read20

Questions?Comments?Discussion?21

Synopsys Design Constraints (SDC) Specify the design intent, including the timing, power, and area constraints for a design SDC is Tcl based Information in the SDC – The SDC version (optional) – The SDC units (optional) – The

Related Documents:

Introduction of Chemical Reaction Engineering Introduction about Chemical Engineering 0:31:15 0:31:09. Lecture 14 Lecture 15 Lecture 16 Lecture 17 Lecture 18 Lecture 19 Lecture 20 Lecture 21 Lecture 22 Lecture 23 Lecture 24 Lecture 25 Lecture 26 Lecture 27 Lecture 28 Lecture

Dynamic Logic Dynamic Circuits will be introduced and their performance in terms of power, area, delay, energy and AT2 will be reviewed. We will review the following logic families: Domino logic P-E logic NORA logic 2-phase logic Multiple O/P domino logic Cascode logic

MOSFET Logic Revised: March 22, 2020 ECE2274 Pre-Lab for MOSFET logic LTspice NAND Logic Gate, NOR Logic Gate, and CMOS Inverter Include CRN # and schematics. 1. NMOS NMOSNAND Logic Gate Use Vdd 10Vdc. For the NMOS NAND LOGIC GATE shown below, use the 2N7000 MOSFET LTspice model that has a gate to source voltage Vgs threshold of 2V (Vto 2.0).File Size: 586KB

Digital Logic Fundamentals Unit 1 – Introduction to the Circuit Board 2 LOGIC STATES The output logic state (level) of a gate depends on the logic state of the input(s). There are two logic states: logic 1, or high, and logic 0, or low. The output of some gates can also be in a high-Z (high impedance) state, which is neither a high

categorical and hypothetical syllogism, and modal and inductive logic. It is also associated with the Stoics and their propositional logic, and their work on implication. Syllogistic logic and propositional logic led later to the development of predicate logic (or first order logic, i.e. the foundational logic for mathematics)

Digital VLSI Design Lecture 3: Logic Synthesis Part 1 Semester A, 2018-19 Lecturer: Dr. Adam Teman. 2 Adam Teman, 2018 Lecture Outline. Introduction what is logic synthesis? Syntax Analysis Elaboration and Binding Pre-mapping . Basic Synthesis Flow

Lecture 1: A Beginner's Guide Lecture 2: Introduction to Programming Lecture 3: Introduction to C, structure of C programming Lecture 4: Elements of C Lecture 5: Variables, Statements, Expressions Lecture 6: Input-Output in C Lecture 7: Formatted Input-Output Lecture 8: Operators Lecture 9: Operators continued

Lecture 1: Introduction and Orientation. Lecture 2: Overview of Electronic Materials . Lecture 3: Free electron Fermi gas . Lecture 4: Energy bands . Lecture 5: Carrier Concentration in Semiconductors . Lecture 6: Shallow dopants and Deep -level traps . Lecture 7: Silicon Materials . Lecture 8: Oxidation. Lecture