Now that you know how to develop SystemVerilog designs and load them into the DE1-SoC board, we can now start looking at more complex designs.
No code provided! Feel free to copy any needed files from previous labs as a starting point.
The customer service department at Nordstrom (the department store) wants an electronic detector device for processing returns. Its goal is to both detect discounted items, so that the proper rebates can be calculated, as well as help find shoplifters returning their ill-gotten gains.
There are six products being sold. The following table shows the Universal Product Code (UPC), whether it was ever on sale (i.e., sold at a discounted price), and whether it is expensive for each item.
Nordstrom has a special method for finding shoplifters. Whenever they sell an expensive item, they put a secret mark on it at checkout. Thus, expensive items that are purchased are specially marked, while stolen expensive items will not be so marked (inexpensive items are never marked, since it is too expensive to mark everything sold). When there is a return, we want to make sure someone didn't steal the item, then return the stolen item for money. Therefore, there are the following four cases to consider for whether or not an item was stolen:
You will be given the UPC of the item under test (signals "U", "P", and "C" for simplicity), and a detector will check for a secret mark ("M"). Your circuit should have one "Discounted" light that lights up whenever a discounted item's UPC is supplied, as well as a "Stolen" light that lights up whenever a theft is detected.
Due before Wednesday section, submitted as a PDF on .
Due by the end of the day on Friday, but typically during your assigned demo slot or a scheduled support hour.
50 points for correctness, style, and testing.
Up to 10 points for using as few logic gates as possible.
You are only allowed to use standard gates (AND, OR, NAND, NOR, NOT, XOR, XNOR). Each gate appearing in your hand-drawn circuit diagram counts the same, and gates (other than NOT) can have as many inputs as you want.