EEC 281 - Homework/Project #4

Work individually, but I strongly recommend working with someone in the class nearby so you can help each other when you get stuck, with consideration of the Course Collaboration Policy. Send an email to me if something is not clear and I will update the assignment using green font.


Total: 375 points

1. [90 pts] This problem requires the design of a block which calculates tan(θ) for a given θ, every clock cycle. Theta ranges from 0 to slightly less than π/4, or 45°. The latency may be as many cycles as needed.

Points for (c) and (d) are possible only if the design is fully functional and without synthesis errors or serious warnings.



[285 pts] The Alexnet convolutional neural net is widely credited with the dramatic rise in popularity of neural nets. Read the 2012 Alexnet paper paying particular attention to Sections 1, 2, 3.4, and 3.5. This project consists of building and synthesizing custom hardware for the first convolutional layer of Alexnet using a reduced image size. The primary specifications for this simplified project are as follows:

The testing environment is built as follows:

Other requirements:

Submit the following.

Points for (e), (f), and (g) are possible only if the design is fully functional and without synthesis errors or serious warnings.


Hint: See the Synthesis handout for details on the achievable cycle time and reading synthesis timing reports.

Hint: See the "matlab: tips for 281" web page for suggestions on addressing memories in matlab.



EEC 281 | B. Baas | ECE Dept. | UC Davis

Updates:
2025/03/04  Posted
2025/03/05  Added max pooling reference link
2025/03/10  Clarified test pixel and filter samples
2025/03/12  Changed image size from 31x31 to 35x35 to give 9 outputs instead of 4.
2025/03/18  Fixed typo, removed "fourth" from problem 2(g)(2)