Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction Spring 2009 W. Rhett Davis.

Slides:



Advertisements
Similar presentations
Digital System Design Subject Name : Digital System Design Course Code : IT-314.
Advertisements

Field Programmable Gate Array
FPGA (Field Programmable Gate Array)
Hao wang and Jyh-Charn (Steve) Liu
Verilog Fundamentals Shubham Singh Junior Undergrad. Electrical Engineering.
ENEL111 Digital Electronics
Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 8: Sequential Design Spring 2009 W. Rhett.
University Of Vaasa Telecommunications Engineering Automation Seminar Signal Generator By Tibebu Sime 13 th December 2011.
EELE 367 – Logic Design Module 2 – Modern Digital Design Flow Agenda 1.History of Digital Design Approach 2.HDLs 3.Design Abstraction 4.Modern Design Steps.
Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 21: Where do you go from here? Spring 2009.
Spring 20067W. Rhett Davis with minor modifications by Dean Brock ECE 406 at UNASlide 1 ECE 406 Design of Complex Digital Systems Lecture 10: 9: State.
ENGIN112 L38: Programmable Logic December 5, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 38 Programmable Logic.
02/02/20091 Logic devices can be classified into two broad categories Fixed Programmable Programmable Logic Device Introduction Lecture Notes – Lab 2.
1/31/20081 Logic devices can be classified into two broad categories Fixed Programmable Programmable Logic Device Introduction Lecture Notes – Lab 2.
February 4, 2002 John Wawrzynek
ECE Lecture 1 1 ECE 3561 Advanced Digital Design Department of Electrical and Computer Engineering The Ohio State University.
CS 151 Digital Systems Design Lecture 38 Programmable Logic.
Field Programmable Gate Array (FPGA) Layout An FPGA consists of a large array of Configurable Logic Blocks (CLBs) - typically 1,000 to 8,000 CLBs per chip.
Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 13: Regression Testing, MemAccess Block.
(1) Introduction © Sudhakar Yalamanchili, Georgia Institute of Technology, 2006.
General FPGA Architecture Field Programmable Gate Array.
EET 252 Unit 5 Programmable Logic: FPGAs & HDLs  Read Floyd, Sections 11-5 to  Study Unit 5 e-Lesson.  Do Lab #5.  Lab #5a due next week. 
Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 19: Cache Operation & Design Spring 2009.
Introduction to FPGA AVI SINGH. Prerequisites Digital Circuit Design - Logic Gates, FlipFlops, Counters, Mux-Demux Familiarity with a procedural programming.
Lecture #3 Page 1 ECE 4110– Sequential Logic Design Lecture #3 Agenda 1.FPGA's 2.Lab Setup Announcements 1.No Class Monday, Labor Day Holiday 2.HW#2 assigned.
Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 2: Introduction to Verilog Syntax Spring.
System Arch 2008 (Fire Tom Wada) /10/9 Field Programmable Gate Array.
Lecture #3 Page 1 ECE 4110– Sequential Logic Design Lecture #3 Agenda 1.FPGA's 2.Lab Setup Announcements 1.No Class Monday, Labor Day Holiday 2.HW#2 assigned.
CSE 494: Electronic Design Automation Lecture 2 VLSI Design, Physical Design Automation, Design Styles.
Lecture 2 1 ECE 412: Microcomputer Laboratory Lecture 2: Design Methodologies.
COE 405 Design and Modeling of Digital Systems
Galen SasakiEE 260 University of Hawaii1 Electronic Design Automation (EDA) EE 260 University of Hawaii.
Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 3: Structural Modeling Spring 2009 W. Rhett.
Chapter 0 deSiGn conCepTs EKT 221 / 4 DIGITAL ELECTRONICS II.
Lecture #3 Page 1 ECE 4110–5110 Digital System Design Lecture #3 Agenda 1.FPGA's 2.Lab Setup Announcements 1.HW#2 assigned Due.
ECE 3110: Introduction to Digital Systems Introduction (Contd.)
Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 7: Design Example, Modeling Flip-Flops Spring.
EE3A1 Computer Hardware and Digital Design
Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction.
Anurag Dwivedi. Basic Block - Gates Gates -> Flip Flops.
EKT303/4 PRINCIPLES OF PRINCIPLES OF COMPUTER ARCHITECTURE (PoCA)
1 Hardware Description Languages: a Comparison of AHPL and VHDL By Tamas Kasza AHPL&VHDL Digital System Design 1 (ECE 5571) Spring 2003 A presentation.
1 Copyright  2001 Pao-Ann Hsiung SW HW Module Outline l Introduction l Unified HW/SW Representations l HW/SW Partitioning Techniques l Integrated HW/SW.
ELEE 4303 Digital II Introduction to Verilog. ELEE 4303 Digital II Learning Objectives Get familiar with background of HDLs Basic concepts of Verilog.
Introduction to ASIC flow and Verilog HDL
ECE 551: Digital System Design & Synthesis Motivation and Introduction Lectures Set 1 (3 Lectures)
Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 4: Testing, Dataflow Modeling Spring 2009.
ECE Lecture 1 1 ECE 561 Digital Circuit Design Department of Electrical and Computer Engineering The Ohio State University.
Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 6: Procedural Modeling Spring 2009 W. Rhett.
Teaching Digital Logic courses with Altera Technology
Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 12: Intro to the LC-3 Micro-architecture.
ECE 3110: Introduction to Digital Systems Introduction (Contd.)
Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 9: State Machines & Reset Behavior Spring.
Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 20: Cache Design Spring 2009 W. Rhett Davis.
FPGA Field Programmable Gate Arrays Shiraz University of shiraz spring 2012.
Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 10: Data-Converter Example Spring 2009 W.
Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 18: More Complex Interfaces Spring 2009.
Introduction to Field Programmable Gate Arrays (FPGAs) EDL Spring 2016 Johns Hopkins University Electrical and Computer Engineering March 2, 2016.
SUBJECT : DIGITAL ELECTRONICS CLASS : SEM 3(B) TOPIC : INTRODUCTION OF VHDL.
Introduction to the FPGA and Labs
Combinational Logic Design
EEE2135 Digital Logic Design Chapter 1. Introduction
ECE 4110–5110 Digital System Design
Programmable Logic Devices: CPLDs and FPGAs with VHDL Design
Field Programmable Gate Array
Field Programmable Gate Array
Field Programmable Gate Array
ECNG 1014: Digital Electronics Lecture 1: Course Overview
HIGH LEVEL SYNTHESIS.
Digital Designs – What does it take
Presentation transcript:

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction Spring 2009 W. Rhett Davis NC State University with significant material from Paul Franzon, Bill Allen, & Xun Liu

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 2 Announcements l Labs to Start in 2 Weeks l HW#1 Due in 12 Days

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 3 Today’s Lecture l Introduction l Brief Review of ECE 212 l Syllabus

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 4 ECE 406: A course in “building stuff” l Specification: Build a piece of hardware to perform Sobel edge detection on a stream of video. How would you build it? *Images by Evan Halley, Michael Chestnut, & Justin Walon, Senior Design Proj. Fall 2007 p = ||G x || 2 + ||G y || 2

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 5 Approaches l ECE 206/306 Approach (Software) » Microcontroller & memory on an evaluation board, assembly language or C code to implement behavior l ECE 212 Approach (Hardware) » Logic Gates (flip-flops, AND & OR gates, multiplexers), –using discrete chips, breadboard, & wires –using a Field Programmable Gate Array (FPGA) l Which approach is better?

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 6 Comparison of Approaches l Cost » Manufacturing / Materials (Recurring) » Design (Non-Recurring) l Performance » Speed » Power

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 7 Analysis of Software Performance l Sobel algorithm needs » 16 AND Operations » 17 Shift Operations » 15 ADD Operations » 2 Multiply Operations » 50 Total per pixel l For NTSC Video (30 frames/sec, 640x480 resolution) » 50 x 30 x 640 x 480 = 461 MOPS (Million Operations per second)

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 8 Analysis of Software Performance l Evan programmed the algorithm in C#, getting one frame in 16 seconds, rather than 30 frames per second l We can assume, however, that if programmed in C or C++, that it would meet the requirement. HardwareAMD Athlon 64x2 CPU + 1 GB DDR2 SDRAM Cost$ $20 SpeedEnough (if programmed properly) Power~ 100 W

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 9 Analysis of Hardware Performance l Evan, Michael, & Justin mapped this design on to an Altera DE2 board and met the timing requirement l Power was 1000X smaller! l If we were to design an ASIC (Application Specific Integrated Circuit), it would also be much faster, but cost changes (higher design cost, lower manufacturing cost) HardwareAMD Athlon 64x2 CPU + 1 GB DDR2 SDRAM Altera Cyclone II EP2C20 FPGA Cost~$65~$45 SpeedEnough Power~ 100 W~0.1 mW

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 10 What are you likely to design? l Digital Still Camera (DSC) l CD Player l Satellite TV/Radio Receiver l Digital Cable Set-Top Box l Cellular Telephone l Wireless LAN Cards l HDTV Receivers l Cable Modems / DSL Modems Kodak DSC

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 11 Kodak DSC System Overview source: Blue is on-chip, white is off-chip built around a TMS320DSC25 chip from Texas Instruments

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 12 Hardware vs. Software l When to use a Hardware approach instead of a Software approach? l New Hardware is generally created whenever a micro-processor can’t be found that’s fast enough for a given application » Higher resolution camera » Higher quality video » Faster data-rate modem » etc. l ECE 406 is a HARDWARE DESIGN CLASS » You’ll design an LC-3 Microcontroller before it’s over

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 13 Review of ECE 212 l Specification: Design a piece of hardware to read in 4 bits and allow the user to select one bit for output. Block Diagram (Sketch) Schematic

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 14 Parts of a Schematic l Ports / Terminals » interface to outside world » how many? l Nets » internal connections » how many? l Symbols » simple (or “abstract”) representation of hardware » how many? l Instances » An occurrence of a symbol » how many

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 15 What is a Digital System? It is a organized collection of digital elements which is designed to perform specified operations on a set of digital inputs and to generate a set of digital responses. A digital system can be as simple as a block of combinational logic or as complex as a microprocessor.

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 16 What is a Digital System? Structure of digital systems: “system” vs. “module” For small systems which can be conveniently designed monolithically the terms “system” and “module” may be used interchangeably. A digital system can be created as a monolithic structure. Complex systems often need to be partitioned into some number of subsystems -- “modules”

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 17 What is a Digital System? Single module system: module data in control data out control System

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 18 What is a Digital System? Multiple module system: module data in control data out control System module data in control

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 19 Inside the TMS320DSC25 chip How do we go about designing this?

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 20 Step 1: Describe the Hardware l One approach: Simply describe the whole system as a set of schematics. l Then send your description off to a semiconductor company to fabricate for you. l What problems arise with this approach? » Drawing schematics takes too much time » How do you know for certain that it will work?

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 21 Step 2: Simulate the Behavior l Automatically generate a timing diagram / waveforms to verify the behavior In[0] In[1] In[2] In[3] clock Out[0] Out[1] Out[2] Out[3] Clock In Out F 1 A 5 x F2AA

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 22 Role of Hardware Description Languages l Modern digital chip and system design centers on the use of Hardware Description Languages (HDL) to capture the design at the Register Transfer Level (RTL) » RTL specifies all registers (flip-flops) and the combinational logic between the flip-flops » Capturing the design in RTL is much faster than drawing a schematic, because you don’t need to specify each gate. » But how do we get the final hardware?

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 23 Step 3: Synthesize the Hardware l Modern design depends heavily on the use of Computer-Aided Design tools: » To synthesize the RTL design into a schematic » To turn the schematic into a chip layout, FPGA mapping or board layout » To verify the original design, and verify that the more detailed designs are consistent with the original design l Good designers depend critically on their ability to operate effectively with the CAD tools » Just knowing how to design logic is not enough » Unfortunately, you must learn a lot of tools and learn how to deal with their complexity and bugs » Its important to form a good understanding of the tool’s methodology HDLs simplify Design Capture & Design Automation

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 24 Synthesis-based chip design l The chip is designed using synthesis tools » Used when time-to-market is the most important issue l Basic Steps: Write HDL Simulate Snythesize Place&Route Verify

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 25 IC Design Approaches l HDL and synthesis based design is used in both Application Specific Integrated Circuits (ASICs): D-flip-flop NOR gate Place and Route Tool

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 26 …IC Design Approaches l and Field Programmable Gate Arrays (FPGAs): Xilinx FPGA architecuture Configurable Logic Block (CLB):

Spring 2009W. Rhett DavisNC State UniversityECE 406Slide 27 Summary l Explain the differences between the following terms: » Schematic vs. Block Diagram » Port vs. Net » Symbol vs. Instance » System vs. Module » HDL vs. RTL