Overview Design Process Managing Complexity Top-Down and Bottom-Up Device Technologies
Chapter 1
Overview of Digital Systems Design
SKEE2263 Digital Systems
Mun’im/Ismahani/Izam
{munim@utm.my,e-izam@utm.my,ismahani@fke.utm.my}
February 14, 2017
Overview Design Process Managing Complexity Top-Down and Bottom-Up Device Technologies
Why Digital Design?
Many times, microcontrollers are not powerful enough
For solving many engineering problems, microcontrollers
are cheap and sufficient
Need to know the best solution for the problem at hand
Overview Design Process Managing Complexity Top-Down and Bottom-Up Device Technologies
Design options for digital systems
Device Advantages Shortcomings
Desktop processor Familiar Big and uses much power
Microcontroller Low cost May not have enough performance
Custom digital circuit Highest performance Require specialized design
Overview Design Process Managing Complexity Top-Down and Bottom-Up Device Technologies
Digital Design Process
Specification
Design
entry
Compilation
Design
files
Simulation
Netlist
Synthesis
Waveform
Real
chip!
Overview Design Process Managing Complexity Top-Down and Bottom-Up Device Technologies
Design Entry
Schematic capture
Graphical based
Only suitable for small
designs
Hardware Description
language (HDL)
Text-based
Just like computer
programming
Overview Design Process Managing Complexity Top-Down and Bottom-Up Device Technologies
Simulation
Functional simulation Timing simulation
Faster Delays are simulated accurately
Device-independent Must be “fitted” to target chip
Overview Design Process Managing Complexity Top-Down and Bottom-Up Device Technologies
Moore’s Law
Source: IEEE international Solid-State Circuits Conference (ISSCC) 2013.
Overview Design Process Managing Complexity Top-Down and Bottom-Up Device Technologies
Level of Abstraction
Physical Behavioral
Levels
objects forms
System Processors, controllers, Executable
memories, SoC programs
Register Adder, comparators, Instructions,
registers, counters RTL, flowcharts
Gate Gates, Boolean equations,
flip-flops finite state machines
Transistor Transistors, resistors Current-voltage
capacitors equations
Overview Design Process Managing Complexity Top-Down and Bottom-Up Device Technologies
Level of Abstraction
System
Module
Gate
Transistor
Overview Design Process Managing Complexity Top-Down and Bottom-Up Device Technologies
The Three Y’s
Hierarchy involves dividing a system into modules, then
further subdividing each of these module until the pieces
are manageable.
Modularity means that modules have well-defined
functions and interfaces, so can connect together without
surprises.
Regularity seeks uniformity among modules. Common
modules reused often, reducing number of distinct
modules that must be designed.
Overview Design Process Managing Complexity Top-Down and Bottom-Up Device Technologies
Hardware Description languages
Why?
Design exploration: describe & simulate a circuit
Logic synthesis: compile code to create hardware
More productive compared to schematic entry
Most common HDLs:
VHDL
Based on Ada language
Somewhat more suitable for very complex design
Verilog
Based on C language
Usually simpler code compared to VHDL
Overview Design Process Managing Complexity Top-Down and Bottom-Up Device Technologies
Top-Down Design: Level 0
A B
a.k.a. Entity Level
4 4
Level 0 4-bit
c out c in
(Top-level Entity) adder
Start at design from the
S
top.
Bottom-up implementation
Define the inputs, outputs
Top-down design
Level 1
and function
A B
4 4
cout 4-bit cin
Level 2
adder
Level 3
S
Overview Design Process Managing Complexity Top-Down and Bottom-Up Device Technologies
Top-Down Design: Level 1
Major blocks
Next draw and connect the
major blocks.
Define inputs, output and
function of each major
block
“Specify but don’t
implement”
Overview Design Process Managing Complexity Top-Down and Bottom-Up Device Technologies
Top-Down Design: Level 2 & 3
Refine major blocks
Define inputs, output and
function of the blocks,
going into further detail
Top-down design is
complete when a block is
built of primitives (gates &
flip-flops)
Overview Design Process Managing Complexity Top-Down and Bottom-Up Device Technologies
Bottom-Up Implementation
Build the components from the primitive level first
Test, test & test
When no errors, store component in library module
Then build the the higher level component using library
modules
Keep adding modules to library
Stop when you reach Entity Level
Overview Design Process Managing Complexity Top-Down and Bottom-Up Device Technologies
ASIC
Application-Specific Integrated Circuit
A custom-made chip
Take a lot of engineering effort to design but for some
applications, it’s worth the trouble
Microprocessors & microcontrollers must be ASIC to
squeeze maximum performance & lowest power
In Malaysia, ASIC design is done in Intel, Altera, Silterra
Must be good in VLSI design
Overview Design Process Managing Complexity Top-Down and Bottom-Up Device Technologies
FPGA
Field-Programmable Gate Array
Programmable hardware
A blank chip is programmed to implement logic functions
Mainly used to accelerate operations which are too slow on
microcontrollers yet want to maintain small size & low
power
Remember, PC is also power but big & power-hungry
FPGA design is easier than ASIC design
Top two FPGA companies are Xilinx and Altera
Overview Design Process Managing Complexity Top-Down and Bottom-Up Device Technologies
FPGA is very useful in:
Robotics & Automation
Control of robots using image processing
Low power high speed controllers
Instrumentation
Increase data acquisition speed
Increase measurement accuracy
Communications
Process more data packets per second
Implement software-defined radio
Power
Control a motor more precisely
More efficient renewable energy
Overview Design Process Managing Complexity Top-Down and Bottom-Up Device Technologies
System-on-Chip (SoC) and Embedded Systems
SoC:
A complex chip that integrates major functions of a
complete end-product into a single chip or chipset
Examples: Apple A5 which contains ARM processor &
most hardware required for iPad
May be ASIC or FPGA
Embedded systems:
A processor that runs at something that doesn’t look like a
computer
Examples: computer mouse, USB drive, printer, camera,
TV, traffic light.... the list is endless
Nice place to apply what you will learn in this subject
Overview Design Process Managing Complexity Top-Down and Bottom-Up Device Technologies
Summary
Abstraction allows a design to be tackled at a high level by
ignoring the details.
Simple digital circuits may be entered using schematic
capture but very complex systems require writing code in
HDL.
The concept of hierarchy, modularity and regularity
maintains productivity.
Contemporary digital systems are implemented on CPLD
or FPGA for rapid prototyping. Designs are implemented
on ASIC when cost and performance targets are justified.