Professional Documents
Culture Documents
Design Methodologies: 18MHC205J - Microcontrollers and Embedded System 1
Design Methodologies: 18MHC205J - Microcontrollers and Embedded System 1
• Performance.
Overall speed, deadlines.
• Functionality and user interface.
• Manufacturing cost.
• Power consumption.
• Other requirements (physical size, etc.)
• Top-down design:
start from most abstract description;
work to most detailed.
• Bottom-up design:
work from small components to big system.
• Real design uses both techniques.
7
Design productivity exponential increase
10,000 100,000
1,000 10,000
0.1 1
productivity
0.01 0.1
0.001 0.01
1981
1983
1985
1989
1991
1993
1995
1999
2001
2003
2009
1987
1997
2005
2007
1981 leading edge chip required 100 designer months
10,000 transistors (ie., 100 transistors/month)
2002 leading edge chip requires 30,000 designer months
150,000,000 (ie., 5000 transistors/month)
Designer cost increase from $1M to $300M
18MHC205J MICROCONTROLLERS N EMBEDDED SYSTEMS 10
The mythical man-month
• The situation is even worse than the productivity gap indicates
• In theory, adding designers to team reduces project completion time
• In reality, productivity per designer decreases due to complexities of team management and communication
• In the software community, known as “the mythical man-month” (Brooks 1975)
• At some point, can actually lengthen project completion time! (“Too many cooks”)
Team
• 60000 15
1M transistors, 1 designer=5000 trans/month 16 16
• 50000 18
Each additional designer reduces for 100 19
trans/month 40000
24 23
• So 2 designers produce 4900 trans/month each
30000
Months until completion
20000 43
10000 Individual
0 10 20 30 40
Number of designers
12
Introduction
Verification Reuse
Implementation
14
The parallel evolution of compilation and synthesis
15
Cont.
Software design evolution
Machine instructions The co-design ladder
Collection machine instructions called Program (0’s,
1’s). Sequential program code (e.g., C, VHDL)
Assemblers
Convert assembly programs into machine Behavioral synthesis
(1990s)
instructions, due to hard dealing with huge number Compilers
of 0’s, 1’s. (1960s,1970s)
Compilers Register transfers
Hardware design involves many more dimensions, while compilers must generate assembly instructions to implement itself. 16
Hardware Designer concerned about size, power, performance and other metrics.
Synthesis Levels
17
Logic Synthesis
• Converting logic-level behavior to structural implementation
By converting Logic equations and/or FSM to connected gates.
• FSM synthesis
– State minimization
– State encoding
18
Two-level minimization
• Represent logic function as sum of products (or product of sums)
– AND gate for each product
– OR gate for each sum
Sum of products
• This minimization gives best possible performance F = abc'd' + a'b'cd + a'bcd + ab'cd
19
Minimum Cover
20
Cont.
Minimum cover: K-map approach
K-map: sum of products K-map: minimum cover
cd00 cd00
Karnaugh map (K-map) ab
00 0
01
0
11
1
10
0
ab
00 0
01
0
11
1
10
0
1 represents minterm 01 0 0 1 0 01 0 0 1 0
11 1 0 0 0 11 1 0 0 0
Circle represents implicant 10 0 0 1 0 10 0 0 1 0
21
Minimum cover that is prime
22
Minimum cover: heuristics
• Heuristic
– Solution technique where optimal solution not guaranteed
– Hopefully comes close
23
Heuristics: iterative improvement
• Start with initial solution
– i.e., original logic equation
• Repeatedly make modifications toward better solution
• Common modifications
– Expand
• Replace each nonprime implicant with a prime implicant covering it
• Delete all implicants covered by new prime implicant
– Reduce
• Opposite of expand
– Reshape
• Expands one implicant while reducing another
• Maintains total # of implicants
– Irredundant
• Selects min # of implicants that cover from existing implicants
• Synthesis tools differ in modifications used and the order they are used
24
Multilevel logic minimization
delay
m
• max delay = 2 gates
• Solve for smallest size
– Multilevel gives pareto-optimal solution 2-level minim.
• Minimum delay for a given size size
• Minimum size for a given delay
25
Example
Minimized 2-level logic function:
F = adef + bdef + cdef + gh 2-level minimized
Requires 5 gates with 18 total gate inputs a
4 ANDS and 1 OR d
b
After algebraic manipulation: e
F = (a + b + c)def + gh c F
Requires only 4 gates with 11 total gate inputs f
2 ANDS and 2 ORs g
Less inputs per gate h
Assume gate inputs = 2 transistors
Reduced by 14 transistors multilevel minimized
36 (18 * 2) down to 22 (11 * 2) a
b
Sacrifices performance for size c
Inputs a, b, and c now have 3-gate delay d
e
Iterative improvement heuristic commonly used f
F
g
h
26
Summary
• Design technology seeks to reduce gap between IC capacity growth and
designer productivity growth
• Synthesis has changed digital design
• Increased IC capacity means sw/hw components coexist on one chip
• Design paradigm shift to core-based design
• Simulation essential but hard
• Spiral design process is popular
27