ECE 171 HM DIGITAL CIRCUITS LAB PROJECT: PRIMES CIRCUIT Lab Project: Primes Circuit, 200 Points Due Date of Primes Circuit: Total Points: Agreed Date to Present: Show TA Lab Project Progress: Extra Credit up to 25 points: Lab with TA: Lab with TA: PSU (2/6/2016) Thursday 3/3/2016 in the lab; earlier dates to be agreed with TA 200 2/5/2016 2/18/2016 Simulating the Primes circuit using a SW tool Fridays 14:00 – 14:50, Intel Lab, FAB base, your own laptop Fridays 15:00 – 15:50, Intel Lab, FAB base, your own laptop General Rule: Create your Primes lab project using an electronic tool, e.g. Microsoft Word. By week 5 arrange a date for the final presentation in the lab with the TA. During the last few weeks, students present completed Primes project to the TA to get full credit. Students who simulate their Primes solution get extra credit. Students who build their Primes solution in HW get extra credit. Students who do both get both extra credits. Summary: Student teams design, write, document, and present a solution for a lab project, named Primes. Primes is a combinational circuit that reads input signals, interprets them as an integer number, and outputs a signal stating, whether or not that integer is a prime number. Only very small, non-negative integers below 16 are considered for input. Note: 1 counts as a prime number. Detail: Step 1: Given input lines ni = n0, n1, n2 etc., devise a truth table for Primes(). Compute i, i.e. explain, how many input lines i are minimally needed for 16 different combinations, and why. Integer inputs range from 0 to 15. Document your choice for i. Step 2: Define the full, non-optimized Primes() function as a sum of products of the input variables ni, i = 0 .. 15. Do not minimize or optimize function Primes() yet. Instead, show a complete, full sum of products. Document function: Primes = n0’ n1’ n2’ ... + n0 n1’ n2’ ..., with the ’ standing for logical negation, and juxtaposition as “logical and” operation; e.g. “n1 n2” means: “n1 and n2”. The + operator stands for “logical or”; e.g. “n1 + n2” means: “n1 or n2”. Step 3: Draw a complete electric circuit, using and gates, or gates, and negaters to produce the single output signal Primes(), which is 1, only if the input lines constitute a prime number. Using schematics capture software yields extra credit of up to 15 points. Step 4: Reduce the Boolean function Primes() from Step 2 to a simpler, minimized function named Primes_min(), using combinational circuit minimization techniques. Hint: if a sum of product terms differs by only a single variable v, with v’ negated in one of the 2 terms, the sum can be replaced by a single term with v missing. For example: t = a b c’ + a b c can be replaced by t = a b. Apply this minimization or others successively! Step 5: Draw a complete electric circuit, using only and gates, or gates, and not gates to produce the single output signal Primes_min(), which is 1, only if the input lines constitute a prime number. State the total net saving of gates in Primes_min() versus the earlier HW implementation of Primes(). Sep 6: Draw a complete Karnaugh Map, whose variables are the input lines for Primes(). Place a 1 into the Karnaugh map if the combination of input signals can be interpreted as a prime number; place a 0 otherwise. Step 7: Demonstrate to the TA in the lab during one of the last few weeks. Milestones: Teams need to agree about a final presentation date by the deadline shown in table Lab Project Milestones. Teams show intermediate progress to Primes in the lab by the specified date; TA signature is required. Teams present their solution using any medium (e.g. hardware 1 Lab Project ECE 171 HM DIGITAL CIRCUITS LAB PROJECT: PRIMES CIRCUIT PSU implementation, HDL, etc.) in the lab to the TA during the last few weeks of class; TA signature required for credit. Lab Project Milestones Milestone and Date Teams using schematic capture (or CAD) tools get 15 % extra credit Teams who build Primes() or Primes_min() circuit in hardware get 25 % extra credit Yes, teams may do both: design using a simulation tool and also implement in hardware, get a total of 40% extra credit By Friday 2/5/2016, teams agree with the TA about final presentation date in the last few weeks of class By Friday 2/12/2016 teams have started design process for lab project By Friday 2/19/2016 each team presents intermediate progress of lab project to the TA in the lab; credit requires TA’s signature Step 1: Define number of input lines, name them ni with i = 0, 1, 2, etc. show the truth table for output Primes() Step 2: design and document the Primes() function as a sum of products (SoP) of the input signals Step 3: Draw the complete circuit for Primes(); max 10 points total extra credit for use of schematic capture program Step 4: derive the function Primes_min(), which is an optimized (minimized) version of Primes() Step 5: Draw the complete circuit for Primes_min(); max 10 points total extra credit for use of schematic capture program Step 6: draw Karnaugh map using an electronic tool, e.g. MS Word or MS Excel etc.; not to be hand-drawn Step 7: By Friday 3/4/2016 all teams have demonstrated their completed lab project (electronic tool such as MS Word to draw circuit; or Verilog or similar tool) to the TA; credit requires TA’s signature Total 2 Lab Project Points 5 n/a 25 20 20 20 20 20 20 50 200