spring 2007 w. rhett davis with minor editing by j. dean brock unca ece 406-602slide 1 ece 406 –...
TRANSCRIPT
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
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
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
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?
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?
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
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
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
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
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
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
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.
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”
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
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
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?
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?
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
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?
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
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
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
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
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