Chapter 3 – The Core
Generator
1) Save “chap2” as “chap3”.
2) Right-click in the “Sources in Project” window and select “New Source …”.
3) Choose “Coregen IP” and name it “multiplex”. Click “Next” and “Finish”
4) From the left window, choose “Basic Elements” and then “Multiplexers”.
5) From the right window, double-click “Bus Multiplexer”.

6) Pick settings identical to the window below. The drawing on the left will change as you change settings.

7) Click “Generate”. In the screen shot above, the word “Generate” is partially covered up in the bottom left. I have no idea why, but you can still click on it.
8) When the success message pops up, click “OK” and then click the X in the upper right corner to close the window. Close the main core generator window and return to your schematic.
9) Place the “multiplex” part and connect wires similar to the screen below:

10) Add a new input pad to “S” with an “IBUFG” as in chapter 1.

11) Open the constraints editor and set port “S” to “P77”

12) Program the chip and watch what happens. When the D2E button is untouched, buttons B8-BE should control the lower 7 segment LEDs. When the D2E button is pressed, B0-B7 should control the lower 7 segment LEDs.
1) Use the core generator to create an accumulator. Use the buttons, switches and/or LEDs to create a “cash register” that starts by displaying zero and then adds in values entered by the user. It should also be able to reset to zero.
2) Use a memory block and multiplexer along with your accumulator (or any other technique you want) to store one “cash register” value. The “cash register” should act the same with and without the storage unit, and the display should be able to toggle between the accumulators value and the memories value.