Lab X

horizontal rule

ece533 | doering | ece labs | ece | rhit

Home
Course Documents
Homework
Labs
Resources

Multi-Module Design

In this section you are to implement a 16-bit up-down counter and display its value on the DIO1 4-digit display. The DIO1 switches and pushbuttons serve as the user input controls, and the DIO1 discrete LEDs display the status of each of the user inputs. Refer to the block diagram of the complete system for details.

The counter includes a "pause" input that causes the counter to hold its current value, and a "direction" input that indicates whether the counter increments or decrements. An unsigned three-bit input provides the increment (or decrement) amount. The counter also includes a count enable input (this input is generated by the frequency divider, so it is an internal signal rather than a user input.

The frequency divider accepts a 50-MHz clock and produces a lower-frequency pulse of one clock cycle duration according to the three-bit "rate" value. The frequency divider shall produce the output pulse at a frequency specified in the following table:

"Rate" Input Pulse frequency (Hz)
3'b000 25,000,000
3'b001 12,500,000
3'b010 32
3'b011 16
3'b100 8.0
3'b101 4.0
3'b110 2.0
3'b111 1.0

Note that the 25-MHz and 12.5-MHz options are included to simplify behavioral simulation (the other rate values would require millions of simulated clock cycles for each counter cycle).

Use the pre-written DigitDisplay module in digit_display.v.

horizontal rule

Home | Course Documents | Homework | Labs | Resources

 ECE533: Programmable Logic Systems Design (S 2004-05)
Department of Electrical and Computer Engineering
Rose-Hulman Institute of Technology


For questions or comments regarding this web contact:
Last updated: 03/10/05.