Digital Logic Design Lecture # 6 University of Tehran.

Slides:



Advertisements
Similar presentations
Chapter 3 Gate-Level Minimization
Advertisements

Switching circuits Composed of switching elements called “gates” that implement logical blocks or switching expressions Positive logic convention (active.
Digital Integrated Circuits© Prentice Hall 1995 Combinational Logic COMBINATIONAL LOGIC.
Digital CMOS Logic Circuits
Verilog HDL -Introduction
Verilog Section 3.10 Section 4.5. Keywords Keywords are predefined lowercase identifiers that define the language constructs – Key example of keywords:
HDL Programming Fundamentals
RTL Design Introduction Decoder Encoder Multiplexer Tri-state Buffer
Figure 4.1. The function f (x1, x2, x3) =  m(0, 2, 4, 5, 6).
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.
ECE 3110: Introduction to Digital Systems
1 Pertemuan 9 Verilog HDL Matakuliah: H0362/Very Large Scale Integrated Circuits Tahun: 2005 Versi: versi/01.
Digital Logic Design Lecture # 17 University of Tehran.
Copyright 2001, Agrawal & BushnellDay-1 PM Lecture 4a1 Design for Testability Theory and Practice Lecture 4a: Simulation n What is simulation? n Design.
Lecture #24 Gates to circuits
ECE 353 Computer Systems Lab I Verilog Hardware Description Language.
ECEN ECEN475 Introduction to VLSI System Design Verilog HDL.
ECE 301 – Digital Electronics Karnaugh Maps and Determining a Minimal Cover (Lecture #8) The slides included herein were taken from the materials accompanying.
Lecture 21, Slide 1EECS40, Fall 2004Prof. White Lecture #21 OUTLINE –Sequential logic circuits –Fan-out –Propagation delay –CMOS power consumption Reading:
Computer Organization and Assembly Language: Chapter 7 The Karnaugh Maps September 30, 2013 By Engineer. Bilal Ahmad.
Lecture # 12 University of Tehran
Digital Logic Design Lecture # 8 University of Tehran.
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use Lecture 11 – Design Concepts.
Digital Computer Design Fundamental
Digital Logic Design Lecture # 7 University of Tehran.
 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.
1 CHAPTER 4: PART I ARITHMETIC FOR COMPUTERS. 2 The MIPS ALU We’ll be working with the MIPS instruction set architecture –similar to other architectures.
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use Lecture 12 – Design Procedure.
1 Logic Gates Digital Computer Logic Kashif Bashir WWW:
ECE 2372 Modern Digital System Design
Introduction to VLSI Design – Lec01. Chapter 1 Introduction to VLSI Design Lecture # 2 A Circuit Design Example.
Digital Logic Design Lecture # 3 University of Tehran.
Hardware Design Environment Instructors: Fu-Chiung Cheng ( 鄭福炯 ) Associate Professor Computer Science & Engineering Tatung University.
Lecture # 11 University of Tehran
ECE122 – Digital Electronics & Design
Introduction Verilog is a HARDWARE DESCRIPTION LANGUAGE (HDL) A hardware description language is a language or means used to describe or model a digital.
1 © 2015 B. Wilkinson Modification date: January 1, 2015 Designing combinational circuits Logic circuits whose outputs are dependent upon the values placed.
CS 3850 Lecture 3 The Verilog Language. 3.1 Lexical Conventions The lexical conventions are close to the programming language C++. Comments are designated.
Digital Logic Design Lecture # 9 University of Tehran.
Logic and Computer Design Simon Petruc-Naum CS 147 – Dr. S.M. Lee.
Chapter 3: Digital Logic Dr Mohamed Menacer Taibah University
Digital Logic Design Lecture # 2 University of Tehran.
Linear Delay Model In general the propagation delay of a gate can be written as: d = f + p –p is the delay due to intrinsic capacitance. –f is the effort.
Fall 2004EE 3563 Digital Systems Design EE 3563 VHSIC Hardware Description Language  Required Reading: –These Slides –VHDL Tutorial  Very High Speed.
Digital Logic Design Lecture # 19 University of Tehran.
Digital Logic Design Lecture # 14 University of Tehran.
TOPIC : Different levels of Fault model UNIT 2 : Fault Modeling Module 2.1 Modeling Physical fault to logical fault.
October 2004Computer Hardware Lecture 5 Slide1 / 29 Lecture 5 Physical Realisation of Logic Gates.
Outline MSI Parts as a Decoder Multiplexer Three State Buffer MSI Parts as a Multiplexer Realization of Switching Functions Using Multiplexers.
ELEE 4303 Digital II Introduction to Verilog. ELEE 4303 Digital II Learning Objectives Get familiar with background of HDLs Basic concepts of Verilog.
CSCI-365 Computer Organization Lecture Note: Some slides and/or pictures in the following are adapted from: Computer Organization and Design, Patterson.
Digital Logic Design Lecture # 15 University of Tehran.
Lecture # 5 University of Tehran
COE 202 Introduction to Verilog Computer Engineering Department College of Computer Sciences and Engineering King Fahd University of Petroleum and Minerals.
CEC 220 Digital Circuit Design Implicants Wed, Sept. 23 CEC 220 Digital Circuit Design Slide 1 of 10.
Digital Logic Design Lecture # 13 University of Tehran.
Boolean Algebra and Computer Logic Mathematical Structures for Computer Science Chapter 7 Copyright © 2006 W.H. Freeman & Co.MSCS Slides Boolean Logic.
Circuit Delay Performance Estimation Most digital designs have multiple signal paths and the slowest one of these paths is called the critical path Timing.
Boolean Algebra and Computer Logic Mathematical Structures for Computer Science Chapter 7 Copyright © 2006 W.H. Freeman & Co.MSCS Slides Boolean Logic.
©2010 Cengage Learning SLIDES FOR CHAPTER 8 COMBINATIONAL CIRCUIT DESIGN AND SIMULATION USING GATES Click the mouse to move to the next page. Use the ESC.
©2010 Cengage Learning SLIDES FOR CHAPTER 8 COMBINATIONAL CIRCUIT DESIGN AND SIMULATION USING GATES Click the mouse to move to the next page. Use the ESC.
1 A hardware description language is a computer language that is used to describe hardware. Two HDLs are widely used Verilog HDL VHDL (Very High Speed.
VLSI Testing Lecture 5: Logic Simulation
Discussion 2: More to discuss
VLSI Testing Lecture 5: Logic Simulation
Timing Model Start Simulation Delay Update Signals Execute Processes
Vishwani D. Agrawal Department of ECE, Auburn University
332:437 Lecture 8 Verilog and Finite State Machines
332:437 Lecture 8 Verilog and Finite State Machines
COE 202 Introduction to Verilog
Presentation transcript:

Digital Logic Design Lecture # 6 University of Tehran

Outline Review of Lecture # 5 Logic Values Verilog Gate’s Fan-out Limitation More on Minimization by KM

Review of Lecture # 5 In the last session, we talked about timing issues in circuits, as we observed, the matters are not only based on the delay of change of the actual signals but also on the propagation of the gates. We considered 2 delay times, t rise and t fall, for the signals, the first being the time needed for a signal to reach 90% of its total value from the instance it had 10% of that value and the second the time for transition from 90% to 10% of its total value. We also talked of t PHL and t PLH.

Review of Lecture # 5 (continued…) As we observed different levels of abstractions were able to satisfy our needs in circuit timing, but as we went higher in the levels of abstraction, more details and features of the real world were ignored.

Logic Values So far we have been using a logic value system with only 2 values -0 and 1. This system causes some problems of different nature. Some of these problems can occur in some of the approaches used for circuit timing, others are for instance problems of representation of certain states such as:

Logic Values (continued…) These problems originate from the fact that we have no accurate control on the switching of transistors used in our circuits. A state such as the one shown in the example in the last slide where the wire is float, is represented by the value ‘Z’ and is called high-impedance. Another state occur when a wire has a value between 0 and 1 or it has an unknown value. This state is represented by the value ‘X’.

Logic Values (continued…) If we, for instance, consider a not structure, supposing certain delay times for the PMOS and NMOS transistors can cause a Z or X to be seen on the output at certain instances of times.

Logic Values (continued…) As a result of the mentioned problems of the 2 state logic system, we will be using a 4 value logic system from now on (0-1-Z-X). Note: NMOS transistors work faster than PMOS transistors of the same size, due to the higher mobility of electrons (in NMOS transistors) in comparison to the mobility of holes (in the PMOS transistors). Hence it would be preferable to use larger NMOS transistors in our structures, but this would cause problems in lay-out making the use of differently sized transistors not so practical.

Verilog Observation of different states that can occur in circuit timing become rather complex to do by hand, thus we use a Hardware Description Language such as Verilog for this means. Until now we have seen different representation for our circuits (transistors-gates-truth tables etc). If analysis of a circuit is to be done by a computer, we have to somehow represent our circuit to the computer. Verilog is a language used for this representation.

Verilog (continued…) The Verilog is a 4 value logic system that can describe circuits in different levels of abstraction, for instance: Transistor level Gate level RTL Behavioral We can also specify timings for our descriptions.

Verilog (continued…) Example: We want to specify a CMOS nand gate in verilog: module cmosnand(a, b, w); input a, b; output w; supply1 vdd; supply0 gnd; wire im1; nmos #(2, 3, 4)(im1, gnd, b); nmos #(2, 3, 4)(w, im1, a); pmos #(3, 4, 5)(w, vdd, b); pmos #(3, 4, 5)(w, vdd, a); endmodule

Verilog (continued…) We will now talk a little about the structures used in our sample Verilog program. About the description of the NMOS and PMOS transistors it must be mentioned that there is no need to be concerned about the order in which the transistors are described. This is due to the concurrency of different sections of a circuit described in Verilog. The 3 number in given parentheses after the number sign are delay times of the specific transistor which are in order from left to right transition to 1, 0 and Z times. If these delay times were not mentioned, sharp transitions to different values would have been used.

Verilog (continued…) Also the output, the input and the control of the transistor must be mentioned in order from left to right in the next parentheses. Example: We want to see how the delays show themselves in the following example where the input of a not gate changes from 0 to 1.

Verilog (continued…) Answer: When the input of the not gate changes from 0 to 1, it takes 3 ns for a 0 to be put on the output from the NMOS transistor, while it takes 5 ns for the PMOS transistor to go to the Z state. Thus in the 2 ns interval, the output of the gate will become X. When the input of the not gate changes again from 1 to 0, it takes 3 ns for a 1 to be placed alongside the 0 on the output, and takes 4 ns for the NMOS to turn to Z. Again in a 1 ns interval, an X will be derived on the output. The output of the not gate will look something like the following figure:

Verilog (continued…) Turning back to Verilog, we can also point out a scale and precision for the delays we give in the following format: `timescale 1ns/100ps

Verilog (continued…) Testing the module we have constructed in Verilog is done by composing a test bench. The following code is a test bench for the CMOS nand module we wrote before: module testnand(); reg ai, bi; wire wo; cmosnand n1(ai, bi, wo); initial begin ai=0; bi=1; #25 ai=1; #30 bi=0; end endmodule

Verilog (continued…) In the initial block we are able to give the inputs certain values at certain times.

Gate’s Fan-out Limitation When a gate’s output is used to drive another gate, a capacitance is put ahead of the driving gate. A matter of importance is how many gates a gate is able to drive with consideration of the above mentioned. This limitation is a result of the inner specification of the gate. We consider the gates that are to be droved uniform. This is because different gates may need different current to be droved with, making the analysis of such situations even more complex. This fan-out limitation used for a gate is another level of abstraction used to hide details.

More on Minimization by KM When constructing a minimal SOP form, we first look for the EPI’s in a set of PI’s. In this map our EPI’s would be, each essential because of the marked boxes in the map. In order to cover the remaining uncovered ones, we can include either the prime implicant or which shows us that the minimal SOP isn’t unique.

More on Minimization by KM (continued…) Thus the minimal SOP form could be which gives us a two level and/or logic network, as shown below:

More on Minimization by KM (continued…) For a minimal POS form we would have. As can be seen, in this example the minimal POS form is unique whereas the minimal SOP form is not.

More on Minimization by KM (continued…) Now we will examine a 5 variable map which is actually shown as two 4 variable maps alongside each other.

More on Minimization by KM (continued…) Consider two 1’s placed in the map as shown in blue. These two terms would be represented as and. Obviously these two terms are boolean adjacent so are the implicants shown in green which are and. As a result we need to change our definition of physical adjacency in such maps and consider the two 4 variable maps as two maps stacked onto each other, so that situations such as the above mentioned can be dealt with accordingly and the combinations of the adjacent terms mentioned done on the karnaugh map itself.