0% found this document useful (0 votes)
224 views

Cpre 281 Project

The document summarizes a final project for a course where the goal was to create a pseudo random number generator using digital logic. The project required storing a user-provided sequence of data, using that data to generate a random number, and storing the random number in memory to display. The author successfully completed the project meeting all specifications and adding an extra random seed generator component. In the process, the author designed components like multiplexers, decoders, counters, registers, and displays to maximize both cost efficiency and speed. Overall, the project taught the author about planning and executing a large digital logic design project from concept to completion.

Uploaded by

api-337902815
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
224 views

Cpre 281 Project

The document summarizes a final project for a course where the goal was to create a pseudo random number generator using digital logic. The project required storing a user-provided sequence of data, using that data to generate a random number, and storing the random number in memory to display. The author successfully completed the project meeting all specifications and adding an extra random seed generator component. In the process, the author designed components like multiplexers, decoders, counters, registers, and displays to maximize both cost efficiency and speed. Overall, the project taught the author about planning and executing a large digital logic design project from concept to completion.

Uploaded by

api-337902815
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 1

CPRE 281: Random Number Generator

My final project for the course of CPR E 281 consisted of creating a pseudo random number
generator using digital logic. This assignment had specific specifications which the machine had to
follow. This machine had to store a sequence of data given by the user, use that data to generate a
random number, and then store that random number in memory. The random number would then
need to be displayed in an easy to read way.

I successfully completed this project, meeting all specifications, and including an extra random
seed generator component. There were many steps that I had to take to complete this project, and I was
responsible for designing the entire system from scratch. To complete this project I had to create: 2-1
multiplexer, 4-1 multiplexer, 2-4 decoder, 2 bit up counter, 8 bit parallel load shift register, finite state
machine, 4 bit wide 4 register file, and a seven segment display decoder.

I designed each one of these components while trying to maximize cost efficiency as well as
speed. When cost interferes with speed, I prioritized cost for this particular project. I made several
optimizations to this assignment, and learned several important concepts during the creation. Upon
completion, the machine worked as specified with no bugs.

I really enjoyed working on this project, and learned many interesting things I had not seen in
class. I found small optimizations in my circuit that was able to allow me to save on cost as well as time
execution. I also learned a lot about planning out a large project and taking it step by step. To complete
this assignment I started with a very abstract concept, and kept going deeper and deeper until the
circuit was complete. Breaking up the project into parts was a very critical part, as I was able to
maintain my focus on the importance of each individual section. For this assignment it was very
important to have the project planned out properly, as there was not a lot of time to fix any issues that
may have come up. For this reason I learned how to properly plan out an entire project before
beginning on the construction, which could potentially save a lot of money in a real world project.

You might also like