2008 final exam electronic design automation page 1 …€¦ · 2008 final exam electronic design...
TRANSCRIPT
2008 Final Exam Electronic Design Automation Page 1
Date: 22.7.2008Time: 14:30 15:45Place: 2370
Permitted resources: 1) handouts, literature, notes2) calculator
The exam consists of 3 problems.
Important Notes:1) Please use the given space and figures to solve each problem.2) Return all sheets of paper.3) Use other colors than red and green.4) For each question only one answer is permitted. Cross out wrong answers.5) This exam consists of 10 numbered pages.6) Subproblems are independent of each other.
Duration of the exam: 75 minutes
Good luck!
Institute for Electronic Design AutomationDepartment of Electrical Engineering and Information TechnologyTechnische Universität MünchenProfessor Dr.-Ing. Ulf Schlichtmann
Please fill out clearly
First Name:
Last Name:
ID:
Points:Problem 1
Problem 2
Problem 3
Total
2008 Final Exam Electronic Design Automation Page 2
Problem 1: Logic Synthesis a) General Questions (3 points)
Determine the cube distance c1, c2 for c1=x yz , c2=x z .
Name a possible drawback of the method of Quine and McCluskey.
By applying laws of Boolean algebra, show: x= xyxy x xz yx y z y x
b) ROBDD (3 points)Construct the ROBDD of the Boolean function h=y wx yx y z w x z and the ordering of variables xÁ yÁzÁw . Use the following form:
h=y wx yx y z w x z
Cofactors:
1 0
2008 Final Exam Electronic Design Automation Page 3
c) Covering Table (3 points)Given is a SOPForm of the Boolean function g(x,y,z,w):
g=yzwz wx yzxywx yzx y wFill out the covering table below and apply a heuristic to find a selection which needs as few prime implicants as possible. State this minimal SOPform.
0001 0100 0101 0110 0111 1001 1101 1111 selection
MinSOPForm:
d) Resolution method (3 points)Determine all prime implicants of the given function by resolution method using the layer algorithm.
x y w x z yz w x y z x y z w0
1
2
3Prime Implicants:
2008 Final Exam Electronic Design Automation Page 4
e) Combinational Optimization (3 points)The Boolean function: i :B4
B with i=x wy zx y zx yz wx y wy w and the don't care set {1001}should be minimized by cube removal. Use appropriate tautology checks to check which of the cubes x y z and xyw may be removed one at a time and together. Use the don't care set if needed.
f) Combinational Optimization (3 points)The Boolean function: i :B4B with i=x yz wx z wx yyz wx y zwy z wx y z
should be minimized by literal removal. Use appropriate tautology checks to check which of the literals z and y may be removed from the cube x y zw one at a time and together.
2008 Final Exam Electronic Design Automation Page 5
Problem 2: Logic Synthesis and Simulationa) General Questions (3 points)
For minimizing finite state machines equivalence checks have to be performed. Explain in words the meaning of 2equivalence.
Determine the multiple implicants of the two functions: f 1=x yx y zf 2=y zx z
What is an event in the sense of logic simulation?
b) TwoLevel Realization (3 points)Given is the function f x =x3x2 x1 x1 x4x4 x1 . Simplify f x and convert it to a twolevel function. Draw a realization using only NAND gates.
2008 Final Exam Electronic Design Automation Page 6
c) Prime Implicants (3 points)From the cubegraph, read of the set of implicants.
Which are the prime implicants?
Which are essential prime implicants? Why?
d) Logic Simulation (3 points)Perform logic simulation for the given circuit with initial condition and scheduled events. Delays are assigned to the gates in the schematic. Use the tables and draw the signals.
t a b c f g h z evaluatedelements
events
0 0 1 0 Init (a, '1', 0, 1)(b, '0', 0, 3)(c, '1', 0, 3)
x=0 x=1
S1
S2
S3
2008 Final Exam Electronic Design Automation Page 7
e) Functional Decomposition (3 points)For the functional decomposition of the function f the ROBDD(f) is given below. Consider x1 and x2 as bound variables and y1, y2 and y3 as free variables.Determine the cubes of the bound variables and the corresponding ROBDD nodes to they lead. State the corresponding expressions of free variables in the composition function for each of these nodes.
Why wouldn't it make sense to use functional decomposition in this case?
f) Synthesis of sequential circuits (3 points)
Design a finite state machine (FSM) for detecting the bit sequence “110” in an input string. The output of the Mealy automaton should be “1” if the sequence was found and “0” in all other cases. After a reset, the FSM is in state S1. Draw the state transition graph and complete the state output table.
What is the smallest number of variables to code the states?
value assigned bound variables node ID function of free variables
2008 Final Exam Electronic Design Automation Page 8
Problem 3: Layout a) General Questions (3 points)
Estimate the length of the given net by the half perimeter of the enclosing rectangle.S = {(3, 1), (5, 0), (2, 4), (2, 1)}
Consider an arbitrary routing channel with several nets. What is the meaning of horizontal restrictions between three nets? What is the meaning of vertical restrictions?
b) Net Models (3 points)A net consists of six pins whose Cartesian coordinates are given below:
P1 = (11, 4), P2 = (6, 2)P3 = (4, 4), P4 = (0, 2)P5 = (6, 4), P6 = (14, 2)
Calculate the distance matrix D for Manhattan distance metric. Create the minimal spanning tree (MST) by the algorithm of Kruskal. Write down nodes and edges of the MST in the order in which they were added to the MST.
nodes: edges:
Construct the Steiner Tree according to Hanan from left to right. Determine its length.
Length of Steiner Tree:
appended node Lmin(a, b) Lmin(a, c) Lmin(a, d) Lmin(a, e) Lmin(a, f) Lmin(a, g)
2008 Final Exam Electronic Design Automation Page 9
c) Shortest Path Algorithm (3 points)Consider the graph below with seven vertices. The number next to an edge denotes the length of the edge, i.e. the distance of the corresponding nodes. Construct the shortest path tree SPT for vertex a using the algorithm of Dijkstra. Draw the SPT using the figure provided.
d) Routing (2 points)Consider the gridded printed circuit board given below. Assume the shaded areas to be blockages. You can not route through them. Find the shortest path from pin S to pin D. The routing may use horizontal wire segments and wire segments in +/60°. Each grid point has thus 6 neighboring points.Modify the LEE algorithm such that the +/60° lines can also be used and apply it to the given problem. What is the shortest path length in touched segments?
Path length:
2008 Final Exam Electronic Design Automation Page 10
e) Channel Routing (7 points)
A routing channel is described by the net pin list given in the left table.
i , i '∈Si ∣C i∣ Zone
a 1, 5', 7' 1
b 2, 4 2
c 2', 3 3
d 3', 4' 4
e 5, 8 5
f 6, 8' 6
g 6', 7 7
8
Determine the complete zone table.Using the figures provided draw horizontal restriction graph GH and vertical restriction graph GV. Determine the minimal number of tracks for both graphs.
Draw the pseudo graph and assign the nets to the tracks heuristically. Thereafter, draw the connecting wires of the nets according to your assignment. Indicate vias by filled cycles.
∈C i
2008 Final Exam Electronic Design Automation Page 11
Solutions to Question 1a) General Questions
Distance: 2 CSOP required, complexity/ data, table selection needed x yy0...
b) ROBDD:
c) Covering tableg=yzwz wx yzxywx yzx y w
0001 0100 0101 0110 0111 1001 1101 1111 optimal selection
p1 x x 2 2
p2 x x x x 4
p3 x x 2 1 1
p4 x x 2 1 0
p5 x x 2 2 1
p6 x x 2 2 2MinSOPForm: yzwz wx y w
a) Resolution method
xy w xz yz w x y z xyz w0
x y xz w1
x w2
3Primes: x z , x w , xy , yz w
y wyz
1
1 w
w
y wy z w
z w
1 0
w 0
h=y wx yx y z w x z
wz
2008 Final Exam Electronic Design Automation Page 12
a) Cube removalx wy zx yz wx ywy w
x y z=w000w=1 , can be removed
x wy zx y zx yz wy w x yw=0z000=z≠1 , cannot be removed w/o DCx wy zx y zx yz wy w x y z w x yw=0z0000≠1 , w/ DC not removeable
check for combined removal obsolete
b) Literal removalz : x y z wxz wx yyz wy z wx y z x yz w=000100=1 , can be removedy: x y z wxz wx yy z wy z wx y z x y z w=000001=1 , can be removedz y : x yz wx z wx yyz wy z w x y z x yz w=0 , cannot be removed together
Solutions Question 2a) same output and oneequivalent next states, meaning they also have the same output
x y z signal change on a net
b) TwoLevel
c) Prime Implicants
f x = x3x2 x1x1 x4x4 x1
= x2 x3x1 x3x4
= x2 x3⋅x1 x3⋅x4
x yz , x y z , x yz , x y z ,x y ,yz , x z x y ,y z , x z x y , xz only covers for 001 and 110
2008 Final Exam Electronic Design Automation Page 13
d) Logic Simulation
e) Functional Decompositionnumber of intermediate variables = 2 = number of bound variables. Nothing saved.
f) Sequential circuits2 Variables needed
x=0 x=1
S1 S1/0 S2/0
S2 S1/0 S3/0
S3 S1/1 S3/0
t a b c f g h z evaluatedelements
events
0 0 1 0 Init (a, '1', 0, 1)(b, '0', 0, 3)(c, '1', 0, 3)
1 1 INV (f, '0', 1, 2)
2 0 XNOR (g, '0', 2, 4)
3 0 1 XNORNAND
(g, '1', 3, 5)
4 0 OR
5 1 OR
value assigned bound variables
(10, 00)
(01)
(11)
node ID function of free variables
6
5
1
y1 y2 y3 y1 y2 y1 y2 y3
y2 y3 y2= y2 y3
1
X 11 15 13 5 5
X 4 10 6 12
X 10 10 16
X 8 14
X 10
x
appended node Lmin(a, b) Lmin(a, c) Lmin(a, d) Lmin(a, e) Lmin(a, f) Lmin(a, g)
b (a) 1, a x 4, a x 5, a x
d (b) 7, b 3, b x 5, a x
g (d) 7, b 7, d 5, a 4, d
f (a) 6, g 7, d 5, a
c (g) 6, g 7, d
e (d) 7, d
2008 Final Exam Electronic Design Automation Page 14
Solutions Question 3a) General questions
11 the three nets must not be in the same track, they would overlap vertical ordering of nets, e.g. net1 above net 2 above net 3
b) Net Models nodes: 2, 3, 1, 5, 6, 4 edges: (2, 3), (1, 5), (1, 6), (2, 5), (4, 5)
Steiner: 26
c) Shortest Path Algorithm