24
Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406- 602 Slide 1 ECE 406 – Design of Complex ECE 406 – Design of Complex Digital Systems Digital Systems Lecture 1: Lecture 1: Introduction Introduction Spring 2007 Spring 2007 W. Rhett Davis W. Rhett Davis NC State University NC State University with significant material from Paul Franzon, Bill with significant material from Paul Franzon, Bill Allen, & Xun Liu Allen, & Xun Liu

Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction

Embed Size (px)

Citation preview

Page 1: Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction

Spring 2007W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602 Slide 1

ECE 406 – Design of Complex ECE 406 – Design of Complex Digital SystemsDigital Systems

Lecture 1: Lecture 1: IntroductionIntroduction

Spring 2007Spring 2007W. Rhett DavisW. Rhett Davis

NC State UniversityNC State Universitywith significant material from Paul Franzon, Bill Allen, & Xun with significant material from Paul Franzon, Bill Allen, & Xun

LiuLiu

Page 2: Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction

Spring 2007W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602 Slide 2

Announcements

Projects are the labs» Jeremy Brown will be the TA

HW#1 Due in 12 Days

Page 3: Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction

Spring 2007W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602 Slide 3

Today’s Lecture

Introduction

Brief Review of ECE 212

Syllabus

Page 4: Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction

Spring 2007W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602 Slide 4

ECE 406: A course in “building stuff”

Specification: Build a piece of hardware to read in 4 bits and allow the user to select one bit for output.

REG

in1

in2

in3

in4

out

How would you build it?

Page 5: Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction

Spring 2007W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602 Slide 5

Approaches

ECE 206/306 Approach (Software)» Microcontroller & memory on an evaluation

board, assembly language or C code to implement behavior

ECE 212 Approach (Hardware)» Discrete logic chips (flip-flops, AND & OR

gates, multiplexers), breadboard, wires

Which approach is better?

Page 6: Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction

Spring 2007W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602 Slide 6

Comparison of Approaches

Cost» Manufacturing / Materials (Recurring)» Design (Non-Recurring)

Performance» Speed» Power

Page 7: Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction

Spring 2007W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602 Slide 7

What are you likely to design?

Digital Still Camera (DSC)

CD Player Satellite TV/Radio

Receiver Digital Cable Set-Top

Box Cellular Telephone Wireless LAN Cards HDTV Receivers Cable Modems / DSL

ModemsKodak DSC

Page 8: Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction

Spring 2007W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602 Slide 8

Kodak DSC System Overview

source: http://www/ti.com Blue is on-chip, white is off-chip

built around a TMS320DSC25 chip from Texas Instruments

Page 9: Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction

Spring 2007W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602 Slide 9

Hardware vs. Software

When to use a Hardware approach instead of a Software approach?

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» 70% of embedded applications run within 250 Mhz

ECE 406 is a HARDWARE DESIGN CLASS» You’ll design an LC-3 Microcontroller before it’s over

Page 10: Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction

Spring 2007W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602 Slide 10

Review of ECE 212

Specification: Design a piece of hardware to read in 4 bits and allow the user to select one bit for output.

REG

in1

in2

in3

in4

out

Block Diagram (Sketch)

D Q

D Q

D Q

D Q

in1

in2

in3

in4

out

sel[1:0]

clock

Schematic

Page 11: Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction

Spring 2007W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602 Slide 11

Parts of a Schematic

D Q

D Q

D Q

D Q

in1

in2

in3

in4

out

sel[1:0]

clock

Ports / Terminals» interface to outside world» how many?

Nets» internal connections» how many?

Symbols» simple (or “abstract”)

representation of hardware» how many?

Instances» An occurrence of a symbol» how many

Page 12: Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction

Spring 2007W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602 Slide 12

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.

Page 13: Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction

Spring 2007W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602 Slide 13

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”

Page 14: Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction

Spring 2007W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602 Slide 14

What is a Digital System?Single module system:

moduledata in

control

data out

control

System

Page 15: Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction

Spring 2007W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602 Slide 15

What is a Digital System?Multiple module system:

module

data in

control

data out

control

System

module

module

data in

control

Page 16: Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction

Spring 2007W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602 Slide 16

Inside the TMS320DSC25 chip

How do we go about designing this?Or how to computer engineers go about designing this?

Page 17: Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction

Spring 2007W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602 Slide 17

Step 1: Describe the Hardware

One approach: Simply describe the whole system as a set of schematics.

Then send your description off to a semiconductor company to fabricate for you.

What problems arise with this approach?» Drawing schematics takes too much time» How do you know for certain that it will work?

Page 18: Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction

Spring 2007W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602 Slide 18

Step 2: Simulate the Behavior

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 F 2 A A

Page 19: Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction

Spring 2007W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602 Slide 19

Role of Hardware Description Languages

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?

Page 20: Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction

Spring 2007W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602 Slide 20

Step 3: Synthesize the Hardware

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 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

Page 21: Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction

Spring 2007W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602 Slide 21

Synthesis-based chip design

The chip is designed using synthesis tools» Used when time-to-market is the most important

issue

Basic Steps:Write HDL

Simulate

Snythesize

Place&Route

Verify

Page 22: Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction

Spring 2007W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602 Slide 22

IC Design Approaches

HDL and synthesis based design is used in both Application Specific Integrated Circuits (ASICs):

D-flip-flop NOR gate

Place and Route Tool

Page 23: Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction

Spring 2007W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602 Slide 23

…IC Design Approaches

and Field Programmable Gate Arrays (FPGAs):

Xilinx FPGAarchitecuture Configurable Logic Block (CLB):

•“cost and time-to-market pressures are forcing implementation of embedded applications to move from ASICs to FPGAs” – Tanurhan, Computer, Nov 2006

Page 24: Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction

Spring 2007W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE 406-602 Slide 24

Summary

Explain the differences between the following terms:

» Schematic vs. Block Diagram

» Port vs. Net

» Symbol vs. Instance

» System vs. Module

» HDL vs. RTL