Title: ECE 406
1ECE 406 Design of Complex Digital
SystemsLecture 1 Introduction
Spring 2007 W. Rhett Davis NC State
University with significant material from Paul
Franzon, Bill Allen, Xun Liu
2Announcements
- Projects are the labs
- Jeremy Brown will be the TA
- HW1 Due in 12 Days
3Todays Lecture
- Introduction
- Brief Review of ECE 212
- Syllabus
4ECE 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.
How would you build it?
5Approaches
- 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?
6Comparison of Approaches
- Cost
- Manufacturing / Materials (Recurring)
- Design (Non-Recurring)
- Performance
- Speed
- Power
7What 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 Modems
Kodak DSC
8Kodak DSC System Overview
built around a TMS320DSC25 chip from Texas
Instruments
source http//www/ti.com
Blue is on-chip, white is off-chip
9Hardware vs. Software
- When to use a Hardware approach instead of a
Software approach? - New Hardware is generally created whenever a
micro-processor cant be found thats 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
- Youll design an LC-3 Microcontroller before its
over
10Review of ECE 212
- 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
11Parts of a Schematic
- 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
12What 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.
13What is a Digital System?
Structure of digital systems system vs.
module
- A digital system can be created as a monolithic
structure.
- Complex systems often need to be partitioned
into some - number of subsystems -- modules
- For small systems which can be conveniently
designed - monolithically the terms system and module
may be - used interchangeably.
14What is a Digital System?
Single module system
15What is a Digital System?
Multiple module system
System
16Inside the TMS320DSC25 chip
How do we go about designing this? Or how to
computer engineers go about designing this?
17Step 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?
18Step 2 Simulate the Behavior
- Automatically generate a timing diagram /
waveforms to verify the behavior
In0
Out0
Out1
In1
In2
Out2
In3
Out3
clock
Clock In Out
F 1 A 5
F
2
A
A
x
19Role 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 dont need to
specify each gate. - But how do we get the final hardware?
20Step 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
tools methodology
HDLs simplify Design Capture Design Automation
21Synthesis-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
- PlaceRoute
- Verify
22IC Design Approaches
- HDL and synthesis based design is used in both
Application Specific Integrated Circuits (ASICs)
NOR gate
D-flip-flop
Place and Route Tool
23IC Design Approaches
- and Field Programmable Gate Arrays (FPGAs)
Xilinx FPGA architecuture
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
24Summary
- Explain the differences between the following
terms - Schematic vs. Block Diagram
- Port vs. Net
- Symbol vs. Instance
- System vs. Module
- HDL vs. RTL