Chapter 2b: Switch-Level Modeling

Slides:



Advertisements
Similar presentations
HDL Programming Fundamentals
Advertisements

ELEN 468 Lecture 61 ELEN 468 Advanced Logic Design Lecture 6 Delay Models.
16/04/20151 Hardware Descriptive Languages these notes are taken from Mano’s book It can represent: Truth Table Boolean Expression Diagrams of gates and.
Logic Values 0:logic 0 / false 1:logic 1 / true X:unknown logic value Z:high-impedance.
ELEN 468 Lecture 111 ELEN 468 Advanced Logic Design Lecture 11 Switch Level Models.
S. Reda EN160 SP’07 Design and Implementation of VLSI Systems (EN0160) Lecture10: Delay Estimation Prof. Sherief Reda Division of Engineering, Brown University.
4-to-1 Multiplexer: Module Instantiation Discussion D7.2 Example 5.
Field-Effect Transistors 1.Understand MOSFET operation. 2. Understand the basic operation of CMOS logic gates. 3. Make use of p-fet and n-fet for logic.
Programmable Logic Architecture Verilog HDL FPGA Design Jason Tseng Week 2-3.
Switch-Level Modeling How to describe a switch-level circuit ?
 Delay values control the time between the change in a right-hand-side operand and when the new value is assigned to the left- hand side.  Three ways.
Chapter 2: Structural Modeling Digital System Designs and Practices Using Verilog HDL and 2008~2010, John Wiley 2-1 Ders – 2: Yapısal Modelleme.
GATE-LEVEL MODELING (Source: a Verilog HDL Primer by J. Bhasker)
ELEN 468 Lecture 111 ELEN 468 Advanced Logic Design Lecture 11 Switch Level Models.
Switch Level Modeling Part II 26 September Contents 1.Clarifications: a)nMOS and pMOS instantiations b)Testbenches for NOR gate example c)Use of.
Chapter 2: Structural Modeling Digital System Designs and Practices Using Verilog HDL and 2008~2010, John Wiley 2-1 Chapter 2a: Structural Modeling.
Digital Logic Design Lecture # 6 University of Tehran.
COE 202 Introduction to Verilog Computer Engineering Department College of Computer Sciences and Engineering King Fahd University of Petroleum and Minerals.
Chapter1: Introduction Digital System Designs and Practices Using Verilog HDL and 2008~2010, John Wiley 1-1 Chapter 1: Introduction Prof. Ming-Bo.
COE 360 Principles of VLSI Design Delay. 2 Definitions.
CMOS VLSI Design Lecture 4: DC & Transient Response Younglok Kim Sogang University Fall 2006.
COMP541 Transistors and all that… a brief overview
CHAPTER 4: MOS AND CMOS IC DESIGN
Digital Circuits ECGR2181 Chapter 3 Notes Data A-data B-data A B here
Copyright © 2004 The McGraw-Hill Companies, Inc. All rights reserved.
THE CMOS INVERTER.
COMP541 Transistors and all that… a brief overview
Engr. Noshina Shamir UET, Taxila
Field Effect Transistors: Operation, Circuit Models, and Applications
IV UNIT : GATE LEVEL DESIGN
Copyright © 2004 The McGraw-Hill Companies, Inc. All rights reserved.
ECE2030 Introduction to Computer Engineering Lecture 4: CMOS Network
VLSI Testing Lecture 5: Logic Simulation
Verilog Introduction Fall
VLSI System Design Lecture: 1.3 COMS LOGICs
EE40 Lecture 15 Josh Hug 7/30/2010.
VLSI Testing Lecture 5: Logic Simulation
Vishwani D. Agrawal Department of ECE, Auburn University
Synthesis of Combinational Logic
CMOS Inverter First Glance
Lecture 4 EGRE 254 1/26/09.
Introduction to DIGITAL CIRCUITS MODELING & VERIFICATION using VERILOG [Part-I]
Chapter 5: Tasks, Functions, and UDPs
Chapter 2a: Structural Modeling
OUTLINE Introduction Basics of the Verilog Language
Digital Circuits ECGR2181 Chapter 3 Notes Data A-data B-data A B here
Chapter 7: Advanced Modeling Techniques
Chapter 9: Sequential Logic Modules
Ratioed Logic.
Lecture 10: Circuit Families
COMBINATIONAL LOGIC.
Subject Name: Fundamentals Of CMOS VLSI Subject Code: 10EC56
332:479 Concepts in VLSI Design Lecture 24 Power Estimation
Design Technologies Custom Std Cell Performance Gate Array FPGA Cost.
DC & Transient Response
Design of Combinational Logic
Circuit Characterization and Performance Estimation
COMBINATIONAL LOGIC DESIGN
UNIT-II Stick Diagrams
Chapter 8: Combinational Logic Modules
Day 3: September 4, 2013 Gates from Transistors
EENG447 Digital IC Design Dr. Gürtaç Yemişcioğlu.
Combinational Circuit Design
Ratioed Logic EE141.
Implementing a generic logic function in CMOS
Lecture 5: DC & Transient Response
Introduction to CMOS VLSI Design Lecture 4: DC & Transient Response
Lecture 10: Circuit Families
COMP541 Transistors and all that… a brief overview
COE 202 Introduction to Verilog
Presentation transcript:

Chapter 2b: Switch-Level Modeling Prof. Ming-Bo Lin Department of Electronic Engineering National Taiwan University of Science and Technology

Syllabus Objectives Switch primitives Delay specifications Signal strengths

Objectives After completing this chapter, you will be able to Describe what is the structural modeling Describe how to instantiate switch primitives Describe how to model a design in switch primitives Describe how to specify delays in switches Describe other features of switch primitives

Syllabus Objectives Switch primitives Delay specifications MOS switches CMOS switch Bidirectional switches Delay specifications Signal strengths

Switch Primitives Ideal switches – without a prefixed letter “r” Resistive switches – with a prefixed letter “r” MOS switches nmos pmos cmos Bidirectional switches tran tranif0 tranif1 Power and ground nets supply1 supply0 Resistive switches rnmos rpmos rcmos Resitive bidirectional switches rtran rtranif0 rtranif1 Pullup and pulldown pullup pulldown

Syllabus Objectives Switch primitives Delay specifications MOS switches CMOS switch Bidirectional switches Delay specifications Signal strengths

The nmos and pmos Switches To instantiate switch elements The instance_name is optional switch_name [instance_name] (output, input, control);

Example 1 --- The CMOS Inverter module mynot (input x, output f); // internal declaration supply1 vdd; supply0 gnd; // NOT gate body pmos p1 (f, vdd, x); nmos n1 (f, gnd, x); endmodule

Example 2 --- CMOS NAND Gates module my_nand (input x, y, output f); supply1 vdd; supply0 gnd; wire a; // NAND gate body pmos p1 (f, vdd, x); pmos p2 (f, vdd, y); nmos n1 (f, a, x); nmos n2 (a, gnd, y); endmodule

Example 4 --- A Pseudo nMOS Gate module my_pseudo_nor(input x, y, output f); supply0 gnd; // Pseudo nMOS gate body nmos nx (f, gnd, x); nmos ny (f, gnd, y); pullup (f); endmodule

Syllabus Objectives Switch primitives Delay specifications MOS switches CMOS switch Bidirectional switches Delay specifications Signal strengths

CMOS Switch To instantiate CMOS switches cmos [instance_name] (output, input, ncontrol, pcontrol); The instance_name is optional

An Example --- A 2-to-1 Multiplexer module my_mux (out, s, i0, i1); output out; input s, i0, i1; //internal wire wire sbar; //complement of s not (sbar, s); //instantiate cmos switches cmos (out, i0, sbar, s); cmos (out, i1, s, sbar); endmodule

Syllabus Objectives Switch primitives Delay specifications MOS switches CMOS switch Bidirectional switches Delay specifications Signal strengths

Bidirectional Switches To instantiate bidirectional switches: tran [instance_name] (in, out); tranif0 [instance_name] (in, out, control); tranif1 [instance_name] (in, out, control); instance_name is optional

Syllabus Objectives Switch primitives Delay specifications MOS/CMOS switches Bidirectional switches Signal strengths

Delay Specifications --- MOS/CMOS Switches Specify no delay mos_sw [instance_name](output, input, …); cmos [instance_name](output, input, …); Specify propagation delay only mos_sw #(prop_delay)[instance_name](output, input, …); cmos #(prop_delay)[instance_name](output, input, …); Specify both rise and fall times mos_sw #(t_rise, t_fall)[instance_name](output, input, …); cmos #(t_rise, t_fall)[instance_name](output, input, …); Specify rise, fall, and turn-off times mos_sw #(t_rise, t_fall, t_off)[instance_name](output, input, …); cmos #(t_rise, t_fall, t_off)[instance_name](output, input, …);

Syllabus Objectives Switch primitives Delay specifications MOS/CMOS switches Bidirectional switches Signal strengths

Delay Specifications --- Bidirectional Switches Specify no delay bdsw name [instance name](in, out, control); Specify a turn-on and turn-off delay bdsw name #(t_on_off)[instance name](in, out,control); Specify separately turn-on and turn-off delays bdsw name #(t_on, t_off)[instance name](in, out, control);

Syllabus Objectives Switch primitives Delay specifications Signal strengths trireg examples

Signal Strengths Can be weakened or attenuated by the resistance of the wires

Single Strength Reduction

Syllabus Objectives Switch primitives Delay specifications Signal strengths trireg nets

trireg Nets Driven state Capacitive state

An Example of trireg Net At simulation time 0 a, b, and c = 1 x = 0 y -> 0 z -> driven state and = strong0 At simulation time 10 b = 0 y -> a high-impedance z -> capacitive state and = medium0

An Example of Charge Sharing Problem At simulation time 0 a = 0 b = c = 1 x, y, and z = strong1 At simulation time 10 b = 0 y -> capacitive state and = large1 z -> driven state and = large1

An Example of Charge Sharing Problem At simulation time 20 c = 0 z -> capacitive state and = small1 At simulation time 30 c = 1 again, y and z share the charge At simulation time 40