Digital Logic Design

Similar documents
Introduction to Digital System Design

Digital Systems Design! Lecture 1 - Introduction!!

These help quantify the quality of a design from different perspectives: Cost Functionality Robustness Performance Energy consumption

Agenda. Michele Taliercio, Il circuito Integrato, Novembre 2001

INTRODUCTION TO DIGITAL SYSTEMS. IMPLEMENTATION: MODULES (ICs) AND NETWORKS IMPLEMENTATION OF ALGORITHMS IN HARDWARE

CHAPTER 3 Boolean Algebra and Digital Logic

Gates. J. Robert Jump Department of Electrical And Computer Engineering Rice University Houston, TX 77251

9/14/ :38

Digital Electronics Detailed Outline

Modeling Latches and Flip-flops

EE 42/100 Lecture 24: Latches and Flip Flops. Rev B 4/21/2010 (2:04 PM) Prof. Ali M. Niknejad

Fault Modeling. Why model faults? Some real defects in VLSI and PCB Common fault models Stuck-at faults. Transistor faults Summary

Layout of Multiple Cells

Chapter 10 Advanced CMOS Circuits

Topics of Chapter 5 Sequential Machines. Memory elements. Memory element terminology. Clock terminology

Latches, the D Flip-Flop & Counter Design. ECE 152A Winter 2012

Introduction to Programmable Logic Devices. John Coughlan RAL Technology Department Detector & Electronics Division

The components. E3: Digital electronics. Goals:

Gates, Circuits, and Boolean Algebra

Design Verification and Test of Digital VLSI Circuits NPTEL Video Course. Module-VII Lecture-I Introduction to Digital VLSI Testing

Contents. System Development Models and Methods. Design Abstraction and Views. Synthesis. Control/Data-Flow Models. System Synthesis Models

AUTOMATIC NIGHT LAMP WITH MORNING ALARM USING MICROPROCESSOR

Objective. Testing Principle. Types of Testing. Characterization Test. Verification Testing. VLSI Design Verification and Testing.

Sequential Logic: Clocks, Registers, etc.

Introduction to CMOS VLSI Design (E158) Lecture 8: Clocking of VLSI Systems

Combinational Logic Design Process

Having read this workbook you should be able to: recognise the arrangement of NAND gates used to form an S-R flip-flop.

VLSI Design Verification and Testing

CHAPTER 11: Flip Flops

VHDL GUIDELINES FOR SYNTHESIS

1. True or False? A voltage level in the range 0 to 2 volts is interpreted as a binary 1.

Digital Design with VHDL

Lecture 10 Sequential Circuit Design Zhuo Feng. Z. Feng MTU EE4800 CMOS Digital IC Design & Analysis 2010

ECE410 Design Project Spring 2008 Design and Characterization of a CMOS 8-bit Microprocessor Data Path

CNC FOR EDM MACHINE TOOL HARDWARE STRUCTURE. Ioan Lemeni

UNIVERSITY OF CALIFORNIA College of Engineering Department of Electrical Engineering and Computer Sciences

International Journal of Electronics and Computer Science Engineering 1482

Lecture 5: Gate Logic Logic Optimization

Low Power AMD Athlon 64 and AMD Opteron Processors

Hardware Implementation of the Stone Metamorphic Cipher

ESP-CV Custom Design Formal Equivalence Checking Based on Symbolic Simulation

路 論 Chapter 15 System-Level Physical Design

LAB #3 VHDL RECOGNITION AND GAL IC PROGRAMMING USING ALL-11 UNIVERSAL PROGRAMMER

Quartus II Introduction for VHDL Users

7. Latches and Flip-Flops

Lecture 7: Clocking of VLSI Systems

A New Paradigm for Synchronous State Machine Design in Verilog

ECE 3401 Lecture 7. Concurrent Statements & Sequential Statements (Process)

COMBINATIONAL and SEQUENTIAL LOGIC CIRCUITS Hardware implementation and software design

NEW adder cells are useful for designing larger circuits despite increase in transistor count by four per cell.

WEEK 8.1 Registers and Counters. ECE124 Digital Circuits and Systems Page 1

1 Introduction. 5 Nontechnical Issues. 6 Summary. c Dr inż. Ignacy Pardyka (Inf.UJK) Systemy wbudowane Rok akad. 2011/ / 64

Quartus II Software Design Series : Foundation. Digitale Signalverarbeitung mit FPGA. Digitale Signalverarbeitung mit FPGA (DSF) Quartus II 1

ECE232: Hardware Organization and Design. Part 3: Verilog Tutorial. Basic Verilog

EXPERIMENT 8. Flip-Flops and Sequential Circuits

A Lesson on Digital Clocks, One Shots and Counters

Step : Create Dependency Graph for Data Path Step b: 8-way Addition? So, the data operations are: 8 multiplications one 8-way addition Balanced binary

RAM & ROM Based Digital Design. ECE 152A Winter 2012

A Lesson on Digital Clocks, One Shots and Counters

Curriculum for a Master s Degree in ECE with focus on Mixed Signal SOC Design

TRUE SINGLE PHASE CLOCKING BASED FLIP-FLOP DESIGN

Asynchronous & Synchronous Reset Design Techniques - Part Deux

A Digital Timer Implementation using 7 Segment Displays

if-then else : 2-1 mux mux: process (A, B, Select) begin if (select= 1 ) then Z <= A; else Z <= B; end if; end process;

RAPID PROTOTYPING OF DIGITAL SYSTEMS Second Edition

BJT Characteristics and Amplifiers

Counters and Decoders

Digital VLSI Systems Design Prof. S. Srinivasan Department of Electrical Engineering Indian Institute of Technology, Madras.

ECE124 Digital Circuits and Systems Page 1

Upon completion of unit 1.1, students will be able to

Sequential Circuit Design

1.1 Silicon on Insulator a brief Introduction

Implementation Details

Here we introduced (1) basic circuit for logic and (2)recent nano-devices, and presented (3) some practical issues on nano-devices.

NTE2053 Integrated Circuit 8 Bit MPU Compatible A/D Converter

Optimization and Comparison of 4-Stage Inverter, 2-i/p NAND Gate, 2-i/p NOR Gate Driving Standard Load By Using Logical Effort

Lecture 11: Sequential Circuit Design

Digital Systems Based on Principles and Applications of Electrical Engineering/Rizzoni (McGraw Hill

Modeling a GPS Receiver Using SystemC

Input, Process and Output

CONTENTS PREFACE 1 INTRODUCTION 1 2 NUMBER SYSTEMS AND CODES 25. vii

1.Introduction. Introduction. Most of slides come from Semiconductor Manufacturing Technology by Michael Quirk and Julian Serda.

11. High-Speed Differential Interfaces in Cyclone II Devices

EXPERIMENT 3: TTL AND CMOS CHARACTERISTICS

Modeling Registers and Counters

Introduction. Jim Duckworth ECE Department, WPI. VHDL Short Course - Module 1

Digitale Signalverarbeitung mit FPGA (DSF) Soft Core Prozessor NIOS II Stand Mai Jens Onno Krah

Sequential Logic Design Principles.Latches and Flip-Flops

Lecture 12: More on Registers, Multiplexers, Decoders, Comparators and Wot- Nots

IL2225 Physical Design

Latch Timing Parameters. Flip-flop Timing Parameters. Typical Clock System. Clocking Overhead

Architectural Level Power Consumption of Network on Chip. Presenter: YUAN Zheng

Rapid System Prototyping with FPGAs

CMOS Logic Integrated Circuits

Introduction to CMOS VLSI Design

Digital Logic Design. Basics Combinational Circuits Sequential Circuits. Pu-Jen Cheng

Alpha CPU and Clock Design Evolution

Lecture 8: Synchronous Digital Systems

Modeling Sequential Elements with Verilog. Prof. Chien-Nan Liu TEL: ext: Sequential Circuit

Transcription:

Digital Logic Design: An Embedded Systems Approach Using VHDL Chapter 1 Introduction and Methodology Portions of this work are from the book, Digital Logic Design: An Embedded Systems Approach Using VHDL, by Peter J. Ashenden, published by Morgan Kaufmann Publishers, Copyright 2007 Elsevier Inc. All rights reserved. Digital Logic Design Digital: circuits that use two voltage levels to represent information Logic: use truth values and logic to analyze circuits Design: meeting functional requirements while satisfying constraints Constraints: performance, size, power, cost, etc. Digital Logic Design. Lecture 1 2 KU EECS 140/141 1

Design using Abstraction Circuits contain millions of transistors How can we manage this complexity? Abstraction Focus on aspects relevant aspects, ignoring other aspects Don t break assumptions that allow aspect to be ignored! Examples: Transistors are on or off Voltages are low or high Digital Logic Design. Lecture 1 3 Digital Systems Electronic circuits that use discrete representations of information Discrete in space and time Digital Logic Design. Lecture 1 4 KU EECS 140/141 2

Embedded Systems Most real-world digital systems include embedded computers Processor cores, memory, I/O Different functional requirements can be implemented by the embedded software by special-purpose attached circuits Trade-off among cost, performance, power, etc. Digital Logic Design. Lecture 1 5 Binary Representation Basic representation for simplest form of information, with only two states a switch: open or closed a light: on or off a microphone: active or muted a logical proposition: false or true a binary (base 2) digit, or bit: 0 or 1 Digital Logic Design. Lecture 1 6 KU EECS 140/141 3

Binary Representation: Example +V switch_pressed Signal represents the state of the switch high-voltage => pressed, low-voltage => not pressed Equally, it represents state of the lamp lamp_lit = switch_pressed Digital Logic Design. Lecture 1 7 Binary Representation: Example +V lamp_enabled lamp_lit sensor dark dark: it s night time lamp_enabled: turn on lamp at night lamp_lit: lamp_enabled AND dark Logically: day time => NOT lamp_lit Digital Logic Design. Lecture 1 8 KU EECS 140/141 4

Basic Gate Components Primitive components for logic design AND gate OR gate 0 1 inverter multiplexer Digital Logic Design. Lecture 1 9 Combinational Circuits Circuit whose output values depend purely on current input values >30 C vat 0 >25 C low level >30 C 0 1 buzzer +V vat 1 >25 C select vat 1 low level select vat 0 Digital Logic Design. Lecture 1 10 KU EECS 140/141 5

Sequential Circuits Circuit whose output values depend on current and previous input values Include some form of storage of values Nearly all digital systems are sequential Mixture of gates and storage components Combinational parts transform inputs and stored values Digital Logic Design. Lecture 1 11 Flipflops and Clocks Edge-triggered D-flipflop stores one bit of information at a time rising edge falling edge D clk Q clk 0 1 D 0 1 Q 0 1 Timing diagram Graph of signal values versus time Digital Logic Design. Lecture 1 12 KU EECS 140/141 6

Real-World Circuits Assumptions behind digital abstraction ideal circuits, only two voltages, instantaneous transitions, no delay Greatly simplify functional design Constraints arise from real components and real-world physics Meeting constraints ensures circuits are ideal enough to support abstractions Digital Logic Design. Lecture 1 13 Integrated Circuits (ICs) Circuits formed on surface of silicon wafer Minimum feature size reduced in each technology generation Currently 90nm, 65nm Moore s Law: increasing transistor count CMOS: complementary MOSFET circuits +V input output Digital Logic Design. Lecture 1 14 KU EECS 140/141 7

Logic Levels Actual voltages for low and high Example: 1.4V threshold for inputs 1.5V 1.0V 0.5V receiver threshold nominal 1.4V threshold 2.5V 2.0V 1.5V 1.0V 0.5V signal with added noise logic high threshold driven signal logic low threshold Digital Logic Design. Lecture 1 15 Logic Levels TTL logic levels with noise margins 2.5V 2.0V 1.5V 1.0V 0.5V signal with added noise V OH V IH driven signal V IL V OL noise margin noise margin V OL : output low voltage V OH : output high voltage V IL : input low voltage V IH : input high voltage Digital Logic Design. Lecture 1 16 KU EECS 140/141 8

Static Load and Fanout Current flowing into or out of an output +V R1 SW1 SW0 R0 output High: SW1 closed, SW0 open Voltage drop across R1 Too much current: V O < V OH Low: SW0 closed, SW1 open Voltage drop across R0 Too much current: V O > V OL Fanout: number of inputs connected to an output determines static load Digital Logic Design. Lecture 1 17 Capacitive Load and Prop Delay Inputs and wires act as capacitors +V R1 output input 3.0V 2.0V t r t f V OH SW1 1.0V V OL SW0 R0 C in tr: rise time tf: fall time tpd: propagation delay delay from input transition to output transition Digital Logic Design. Lecture 1 18 KU EECS 140/141 9

Other Constraints Wire delay: delay for transition to traverse interconnecting wire Flipflop timing delay from clk edge to Q output D stable before and after clk edge Power current through resistance => heat must be dissipated, or circuit cooks! Digital Logic Design. Lecture 1 19 Area and Packaging Circuits implemented on silicon chips Larger circuit area => greater cost Chips in packages with connecting wires More wires => greater cost Package dissipates heat Packages interconnected on a printed circuit board (PCB) Size, shape, cooling, etc, constrained by final product Digital Logic Design. Lecture 1 20 KU EECS 140/141 10

Models Abstract representations of aspects of a system being designed Allow us to analyze the system before building it Example: Ohm s Law V = I R Represents electrical aspects of a resistor Expressed as a mathematical equation Ignores thermal, mechanical, materials aspects Digital Logic Design. Lecture 1 21 VHDL VHSIC Hardware Description Language a computer language for modeling behavior and structure of digital systems Electronic Design Automation (EDA) using VHDL Design entry: alternative to schematics Verification: simulation, proof of properties Synthesis: automatic generation of circuits Digital Logic Design. Lecture 1 22 KU EECS 140/141 11

Entity Declarations Describes input and outputs of a circuit >30 C above_30_0 temp_bad_0 >25 C low level >30 C or_0a inv_0 above_25_0 below_25_0 low_level_0 above_30_1 temp_bad_1 or_0b wake_up_0 select_mux 0 buzzer 1 buzzer >25 C low level inv_1 above_25_1 below_25_1 low_level_1 or_1a or_1b wake_up_1 select_vat_1 +V Digital Logic Design. Lecture 1 23 Entity Declarations library ieee; use ieee.std_logic_1164.all; entity vat_buzzer is port ( above_25_0, above_30_0, low_level_0 : in std_logic; above_25_1, above_30_1, low_level_1 : in std_logic; select_vat_1 : in std_logic; buzzer : out std_logic ); end entity vat_buzzer; Digital Logic Design. Lecture 1 24 KU EECS 140/141 12

Structural Architectures library dld; use dld.gates.all; architecture struct of vat_buzzer is signal below_25_0, temp_bad_0, wake_up_0 : std_logic; signal below_25_1, temp_bad_1, wake_up_1 : std_logic; begin -- components for vat 0 inv_0 : inv (above_25_0, below_25_0); or_0a : or2 (above_30_0, below_25_0, temp_bad_0); or_0b : or2 (temp_bad_0, low_level_0, wake_up_0); -- components for vat 1 inv_1 : inv (above_25_1, below_25_1); or_1a : or2 (above_30_1, below_25_1, temp_bad_1); or_1b : or2 (temp_bad_1, low_level_1, wake_up_1); select_mux : mux2 (wake_up_0, wake_up_1, select_vat_1, buzzer); end architecture struct; Digital Logic Design. Lecture 1 25 Behavioral Architectures architecture behavior of vat_buzzer is begin buzzer <= low_level_1 or (above_30_1 or not above_25_1) when select_vat_1 = '1' else low_level_0 or (above_30_0 or not above_25_0); end architecture behavior; Digital Logic Design. Lecture 1 26 KU EECS 140/141 13

Design Methodology Simple systems can be design by one person using ad hoc methods Real-world systems are design by teams Require a systematic design methodology Specifies Tasks to be undertaken Information needed and produced Relationships between tasks dependencies, sequences EDA tools used Digital Logic Design. Lecture 1 27 A Simple Design Methodology Requirements and Constraints Design Synthesize Physical Implementation Manufacture Functional Verification Post-synthesis Verification Physical Verification Test OK? Y OK? Y OK? Y N N N Digital Logic Design. Lecture 1 28 KU EECS 140/141 14

Hierarchical Design Circuits are too complex for us to design all the detail at once Design subsystems for simple functions Compose subsystems to form the system Treating subcircuits as black box components Verify independently, then verify the composition Top-down/bottom-up design Digital Logic Design. Lecture 1 29 Hierarchical Design Architecture Design Design Functional Verification N OK? Y N Unit Design Unit Verification OK? Y Integration Verification N OK? Y Digital Logic Design. Lecture 1 30 KU EECS 140/141 15

Synthesis We usually design using register-transferlevel (RTL) VHDL Higher level of abstraction than gates Synthesis tool translates to a circuit of gates that performs the same function Specify to the tool the target implementation fabric constraints on timing, area, etc. Post-synthesis verification synthesized circuit meets constraints Digital Logic Design. Lecture 1 31 Physical Implementation Implementation fabrics Application-specific ICs (ASICs) Field-programmable gate arrays (FPGAs) Floor-planning: arranging the subsystems Placement: arranging the gates within subsystems Routing: joining the gates with wires Physical verification physical circuit still meets constraints use better estimates of delays Digital Logic Design. Lecture 1 32 KU EECS 140/141 16

Codesign Methodology Requirements and Constraints Partitioning Hardware Requirements and Constraints Software Requirements and Constraints Hardware Design and Verification Software Design and Verification N OK? OK? N Manufacture and Test Digital Logic Design. Lecture 1 33 Summary Digital systems use discrete (binary) representations of information Basic components: gates and flipflops Combinational and sequential circuits Real-world constraints logic levels, loads, timing, area, etc VHDL models: structural, behavioral Design methodology Digital Logic Design. Lecture 1 34 KU EECS 140/141 17