Gheorghe M. Ştefan - 2014 -

Slides:



Advertisements
Similar presentations
Table 7.1 Verilog Operators.
Advertisements

Verilog Intro: Part 1.
Computer Science 210 Computer Organization Clocks and Memory Elements.
1 Fundamentals of Computer Science Sequential Circuits.
Flip-Flops, Registers, Counters, and a Simple Processor
Gheorghe M. Ştefan
Sequential Circuits1 DIGITAL LOGIC DESIGN by Dr. Fenghui Yao Tennessee State University Department of Computer Science Nashville, TN.
EE2420 – Digital Logic Summer II 2013
Slide 1 7. Verilog: Combinational always statements. VHDL: Combinational Processes: To avoid (I.E. DO NOT What in your HDL code?) Cases that generate Synthesis.
LOGIC GATES ADDERS FLIP-FLOPS REGISTERS Digital Electronics Mark Neil - Microprocessor Course 1.
 HDLs – Verilog and Very High Speed Integrated Circuit (VHSIC) HDL  „ Widely used in logic design  „ Describe hardware  „ Document logic functions.
Logic Circuits Another look at Floating Point Numbers Common Combinational Logic Circuits Timing Sequential Circuits Note: Multiplication & Division in.
Chapter 4: The Building Blocks: Binary Numbers, Boolean Logic, and Gates Invitation to Computer Science, Java Version, Third Edition.
Chapter 4: The Building Blocks: Binary Numbers, Boolean Logic, and Gates Invitation to Computer Science, C++ Version, Third Edition.
1  1998 Morgan Kaufmann Publishers Chapter Five The Processor: Datapath and Control.
The Logic Machine We looked at programming at the high level and at the low level. The question now is: How can a physical computer be built to run a program?
Chapter 4: The Building Blocks: Binary Numbers, Boolean Logic, and Gates Invitation to Computer Science, C++ Version, Third & Fourth Edition Spring 2008:
11/16/2004EE 42 fall 2004 lecture 331 Lecture #33: Some example circuits Last lecture: –Edge triggers –Registers This lecture: –Example circuits –shift.
Chapter Five The Processor: Datapath and Control.
CSCE 211: Digital Logic Design Chin-Tser Huang University of South Carolina.
Logic and Computer Design Dr. Sanjay P. Ahuja, Ph.D. FIS Distinguished Professor of CIS ( ) School of Computing, UNF.
DIGITAL ELECTRONICS CIRCUIT P.K.NAYAK P.K.NAYAK ASST. PROFESSOR SYNERGY INSTITUTE OF ENGINEERING & TECHNOLOGY.
Fall 2007 L16: Memory Elements LECTURE 16: Clocks Sequential circuit design The basic memory element: a latch Flip Flops.
Mantıksal Tasarım – BBM231 M. Önder Efe
1 Sequential Circuits Registers and Counters. 2 Master Slave Flip Flops.
Binary System and Logical Gates
Some Useful Circuits Lecture for CPSC 5155 Edward Bosworth, Ph.D. Computer Science Department Columbus State University.
Verilog Basics Nattha Jindapetch November Agenda Logic design review Verilog HDL basics LABs.
Gheorghe M. Ştefan
Registers & Counters M. Önder Efe
ECE 2372 Modern Digital System Design
1 Registers and Counters A register consists of a group of flip-flops and gates that affect their transition. An n-bit register consists of n-bit flip-flops.
CHAPTER 1 INTRODUCTION NUMBER SYSTEMS AND CONVERSION.
1 Digital Convergence! Smart Phone: IT + Telecommunication + Consumer Electronics + Entertainment Analog vs Digital system Ex: Watch, LP vs CD, Camera.
Chapter 3 Digital Logic Structures. Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 3-2 Basic Logic Gates.
CHAPTER 1 INTRODUCTION NUMBER SYSTEMS AND CONVERSION
ENG241 Digital Design Week #6 Sequential Circuits (Part A)
Chapter 2Basic Digital Logic1 Chapter 2. Basic Digital Logic2 Outlines  Basic Digital Logic Gates  Two types of digital logic circuits Combinational.
1 Workshop Topics - Outline Workshop 1 - Introduction Workshop 2 - module instantiation Workshop 3 - Lexical conventions Workshop 4 - Value Logic System.
Chapter 3 Digital Logic Structures. Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 3-2 Complete Example.
Chapter 3 Digital Logic Structures. 3-2 Combinational vs. Sequential Combinational Circuit always gives the same output for a given set of inputs  ex:
Anurag Dwivedi. Basic Block - Gates Gates -> Flip Flops.
Digital Circuits Text Book –M. M. Mano, "Digital Design," 3rd Ed., Prentice Hall Inc., Reference –class notes Grade –quizzes:15% –mid-term:27.5%
Topics covered: Arithmetic CSE243: Introduction to Computer Architecture and Hardware/Software Interface.
CS1Q Computer Systems Lecture 11 Simon Gay. Lecture 11CS1Q Computer Systems - Simon Gay 2 The D FlipFlop The RS flipflop stores one bit of information.
Computer Organization CS345 David Monismith Based upon notes by Dr. Bill Siever and notes from the Patternson and Hennessy Text.
Logic Design / Processor and Control Units Tony Diep.
Chapter 3 Digital Logic Structures. Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 3-2 Transistor: Building.
1 2-Hardware Design Basics of Embedded Processors.
Logic Design CS221 1 st Term combinational circuits Cairo University Faculty of Computers and Information.
Instructor: Alexander Stoytchev CprE 281: Digital Logic.
Verilog hdl – II.
COMP541 Sequential Circuits
Teaching Digital Logic courses with Altera Technology
Introduction to Verilog
Sequential Logic Flip-Flop Circuits By Dylan Smeder.
CS 61C: Great Ideas in Computer Architecture Sequential Elements, Synchronous Digital Systems 1 Instructors: Vladimir Stojanovic & Nicholas Weaver
Instructor: Alexander Stoytchev CprE 281: Digital Logic.
Dept. of Electrical Engineering
COMBINATIONAL AND SEQUENTIAL CIRCUITS Guided By: Prof. P. B. Swadas Prepared By: BIRLA VISHVAKARMA MAHAVDYALAYA.
Chapter 3 Boolean Algebra and Digital Logic T103: Computer architecture, logic and information processing.
Digital Logic Structures: Chapter 3 COMP 2610 Dr. James Money COMP
Everything is a number Everything in a computer memory and on storages is a number. Number  Number Characters  Number by ASCII code Sounds  Number.
CHAPTER 1 INTRODUCTION NUMBER SYSTEMS AND CONVERSION
Instructor: Alexander Stoytchev
ECE Digital logic Lecture 16: Synchronous Sequential Logic
COSC 2021: Computer Organization Instructor: Dr. Amir Asif
CS Fall 2005 – Lec. #5 – Sequential Logic - 1
CSE 370 – Winter Sequential Logic - 1
Computer Organization
Presentation transcript:

Gheorghe M. Ştefan

Course: 3 hours/week Text book: Seminar: 2 hours every two weeks Laboratory: 2 hours every two weeks Grading: 30% seminar 40% home works 30% final exam Mandatory: 50% from lab & seminar 2014Digital Integrated Circuits - week one2

WHAT’S A DIGITAL SYSTEM? Framing the digital domain Defining a digital system Our first target 2014Digital Integrated Circuits - week one3

Analog to Digital Conversion (ADC) 2014Digital Integrated Circuits - week one4 s(t): a continuous, analog signal clock : periodic square wave with frequency f clock = 1/T sample rate: samples per second (SPS), is given by 1/T resolution: number of bits used to express the level (3 bits in our example)

2014Digital Integrated Circuits - week one5 Both, sample rate and resolution are doubled Commercial ADC: up to 6 GSPS 6 – 24 bits resolution (at 6 GSPS only 12 bits) 0

Generic digital system 2014Digital Integrated Circuits - week one6

What is computer science? 2014Digital Integrated Circuits - week one7

Digital system. Formal definition 2014Digital Integrated Circuits - week one8 DS = (X, Y, S, f, g) X  {0,1} n is the n-bit input set Y  {0,1} m is the m-bit output set S  {0,1} q is the q-bit internal state (state) set f:(X × S) → S is the state transition function g:(X × S) → Y is the output transition function If x t  X, y t  Y, s t  S s t = f(x t-1, s t-1 ) is a sequential function y t = g(x t, s t ) is a combinational function

Digital Circuit: the simplest embodiment of a Digital System Binary configurations: input: X n-1, X n-2, … X 0 output: Y m-1, Y m-2, … Y 0 state: S q-1, S q-2, … S 0 with: X i, Y j, S k,  {0,1} coded with: 0 Volt for Volt for 1 combinational circuits registers clock signal 2014Digital Integrated Circuits - week one9

Combinational circuit 2014Digital Integrated Circuits - week one10 On in all n-bit binary configurations must be considered Output can change at any input bit switch : On out some (rarely all) of m-bit binary configurations are considered t p : propagation time shaded time interval: transition time from F(in1) to F(in2)

The Register 2014Digital Integrated Circuits - week one11 t su : set-up time t hold : hold time t p : propagation time from active edge of clock to output T clock : the period of the clock signal … t i-1 t i t i+1 … : discrete ticking time shaded interval: the input can change in this time interval

Digital system in Verilog HDL 2014Digital Integrated Circuits - week one12

2014Digital Integrated Circuits - week one13 The content of file 0_parameter.v : Color code: blue – reserved words green – comments orange - numbers

The result of synthesis 2014Digital Integrated Circuits - week one14 stateTransition combinational module is instantiated as s tateTrans outputTransition combinational module is instantiated as outTrans fd is the register; its output goes forward to outTrans and backward to close the loop though stateTrans module

Our first target 2014Digital Integrated Circuits - week one15 Rare and isolated wrong pixels must be corrected. No video sensor is perfect. s(t) : the input sample at the moment t s’(t) : the corrected sample at the moment t The algorithm: s’(t) = if (s(t)= 0) then (s(t-1) + s(t+1))/2 else s(t)

The error 2014Digital Integrated Circuits - week one16

The actual timing 2014Digital Integrated Circuits - week one17

To make the correction, three successive values: in (t-3] in (t-2) in(t-1) must be loaded as the internal state of the circuit. The structure of the internal state consists of 3 sub-states: State[11:0] = {ss3[3:0],ss2[3:0],ss1[3:0]} State transition function: state(t) = {ss3, ss2, ss1} state(t+1) = {ss2, ss1, in(t)} Output transition function: Out(t) = (ss2 = 0) ? (ss3+ss1)/2 : ss2 Results a latency of 2 clock cycles 2014Digital Integrated Circuits - week one18

2014 Digital Integrated Circuits - week one19 state[11:8] = xxxx state[7:4] = xxxx state[3:0] = xxxx + /2 sel = 0 ? in = xxxx xxxx out = xxxx x clock 01

2014 Digital Integrated Circuits - week one20 state[11:8] = xxxx state[7:4] = xxxx state[3:0] = xxxx + /2 sel = 0 ? in = 0111 xxxx out = xxxx x clock 01

2014 Digital Integrated Circuits - week one21 state[11:8] = xxxx state[7:4] = xxxx state[3:0] = /2 sel = 0 ? in = 1001 xxxx out = xxxx 0 clock 01

2014 Digital Integrated Circuits - week one22 state[11:8] = xxxx state[7:4] = 0111 state[3:0] = /2 sel = 0 ? in = 1010 xxxx out = clock 01

2014 Digital Integrated Circuits - week one23 state[11:8] = 0111 state[7:4] = 1001 state[3:0] = /2 sel = 0 ? in = out = clock 01

2014 Digital Integrated Circuits - week one24 state[11:8] = 1001 state[7:4] = 1010 state[3:0] = /2 sel = 0 ? in = out = clock 01

2014 Digital Integrated Circuits - week one25 state[11:8] = 1010 state[7:4] = 1011 state[3:0] = /2 sel = 0 ? in = out = clock 01

2014 Digital Integrated Circuits - week one26 state[11:8] = 1011 state[7:4] = 1100 state[3:0] = /2 sel = 0 ? in = out = clock 01

2014 Digital Integrated Circuits - week one27 state[11:8] = 1100 state[7:4] = 1011 state[3:0] = /2 sel = 0 ? in = out = clock 01

2014 Digital Integrated Circuits - week one28 state[11:8] = 1011 state[7:4] = 1010 state[3:0] = /2 sel = 0 ? in = out = clock 01

2014 Digital Integrated Circuits - week one29 state[11:8] = 1010 state[7:4] = 1000 state[3:0] = /2 sel = 0 ? in = out = clock 01

2014 Digital Integrated Circuits - week one30 state[11:8] = 1000 state[7:4] = 0101 state[3:0] = /2 sel = 0 ? in = out = clock 01

2014 Digital Integrated Circuits - week one31 state[11:8] = 0101 state[7:4] = 0011 state[3:0] = /2 sel = 0 ? in = out = clock 01

2014 Digital Integrated Circuits - week one32 state[11:8] = 0011 state[7:4] = 0010 state[3:0] = /2 sel = 0 ? in = out = clock 01

2014 Digital Integrated Circuits - week one33 state[11:8] = 0010 state[7:4] = 0010 state[3:0] = /2 sel = 0 ? in = out = clock 01

2014 Digital Integrated Circuits - week one34 state[11:8] = 0010 state[7:4] = 0000 state[3:0] = /2 sel = 0 ? in = out = clock 01

2014 Digital Integrated Circuits - week one35 state[11:8] = 0000 state[7:4] = 0101 state[3:0] = /2 sel = 0 ? in = out = clock 01

2014Digital Integrated Circuits - week one36

2014Digital Integrated Circuits - week one37

Simulation 2014Digital Integrated Circuits - week one38

Simulation (cont) 2014Digital Integrated Circuits - week one39

Synthesis: top level 2014Digital Integrated Circuits - week one40

Synthesis: second level 2014Digital Integrated Circuits - week one41

Synthesis: third level 2014Digital Integrated Circuits - week one42

The functions involved in digital pixel correction The predicate function - (ss2 = 0) - used to detect the wrong pixel The addition function, used to compute the interpolation The division by 2 function, used to compute the interpolation The selection function, according to the result of the predicate function select the result of interpolation or the current value The storage function, triggered by the active edge of clock, used to store the internal state of the system 2014Digital Integrated Circuits - week one43

The first crossing through the matter Main targets: Form behavioral to structural description in Verilog Working with simple combinational functions Learning about the internal structure of register Simple applications Provide the motivation for: Understand the transistor level description of a logic circuit Designing digital systems using digital circuits 2014Digital Integrated Circuits - week one44

DIGITAL CIRCUITS Combinational circuits Zero circuit Selection circuit (multiplexor) Adder Divider Sequential circuits Elementary latches Clocked latches (transparent on the active level) Master-Slave flip-flops (triggered by the active edge) Register Applications Shift register Counter 2014Digital Integrated Circuits - week one45

Combinational circuits 2014Digital Integrated Circuits - week one46 xyxy(xy)’ xy xyxy(x  y)’ xyx+y(x+y)’

Zero circuit: a n-input NOR 2014Digital Integrated Circuits - week one47 fan-in: number of inputs of a logic circuit depth: number of logic levels of a logic circuit size: the total number of inputs in all the circuits fan-in = 2 depth = 1 size = 2 fan-in = n depth = 1 size = n fan-in = 8 depth = 7 size = 14 fan-in = 8 depth = 3 size = 14

Selection circuit (multiplexer) 2014Digital Integrated Circuits - week one48 out = sel in1 + sel’ in0

2014Digital Integrated Circuits - week one49 Behavioral: Structural:

Synthesis result for n = Digital Integrated Circuits - week one50

Adder 2014Digital Integrated Circuits - week one51 For n=1, results the one-bit adder. The logic expressions are sum = a  b  c = (a  b)  c carry = a b + c (a  b)

2014Digital Integrated Circuits - week one52 sum = a’b’c + a’bc’ + ab’c’ + abc = a’(b’c + bc’) + a(b’c’ + bc) = a’(b  c) + a(b  c)’ = a  (b  c) = a  b  c carry = a’bc + ab’c + abc’ + abc= = (a’b+ab’)c+ab(c’+c)= = (a  b)c + ab

Integer divide by 2 == right shift Integers Positive integers: from 8’b0000_0000 = 0 to 8’b1111_1111 = +255 Signed integers: from 8’b1_ = -128 through 8’b0_ = 0 to 8’b0_ = +127 Negative integer is the positive one, complemented =0_ >1_ =1_ =-127 Divide by 2 For positive integers: logic right shift (with 0 input) 8’b1001_1100 (156) => 8’b0100_1110 (78) For signed integers: arithmetic right shift (with sign input) - sign is preserved 8’b1_ (-70) => 8’b1_ (-35) 2014Digital Integrated Circuits - week one53

Home work 1 Problems from 2.1 to 2.7; see Text Book at Send your home work as a one-file word document to With the subject: CID_42x_LastName_FirstName_TCy Example: CID_421_Popescu_Ion_TC4 2014Digital Integrated Circuits - week one54