Course Readings/ Tutorials

Paper/TutorialComments
https://www.edaplayground.comEDA Playground is a free web application that allows users to edit, simulate, and synthesize HDL code.
https://www.youtube.com/watch?v=gExBBwRfu3kA simple introduction to how EDA Playground works.
https://www.edaplayground.com/x/HjXKExample Code for a D Flip Flop and Test Bench.
eda_sim_tutorial_edit.mp4Video Tutorial for Simulation using a Verilog Example and Testbench.
cadence xcelium sim tutorialVideo Tutorial for Cadence Xcelium Simulation using a Flip Flop Example
genus tutorialVideo Tutorial for Genus using Flip Flop Example
copy_template.shscript to copy template/example project

Homework / Projects

All future dates tentative until hwk/project assigned.

NumberDue Date% Hwk/proj gradeMaterial covered and additional files
1Sunday, Sept 8th, 11 pm 10%HW1-ALU.pdf
2Sunday, September 22nd, 11 pm15%HW 2 PDF
3Phase 1: October 13th, 11:50 pm
Phase 2: October 20th
15%HW3: Convert an RGB image to grayscale image and displaying the post place and route output on monitor
Required Materials: HW3
Helpful Materials: RGBtoBW, ImgtoMat, PicturetoMatrix, Design Block Diagram, Parrot, Tutorial for Post Synthesis Simulations
Final ProjectPhase 1: Due November 17th
8-bit design
Phase 2: Due November 24th
2-bit or binary design
Phase 3: Post Synthesis, Layout and Verification of Both designs Due December 3rd
Phase 4: Final Report in IEEE 2-Column Conference Paper Format Due December 11th
30%Design and comparison of a binarized neural network with an 8-bit implementation for a hardware accelerator targeting 10-class handwritten digit recognition using the MNIST dataset. Includes synthesis, post-VLSI layout, and verification. The final report will follow the IEEE two-column format
All required files are posted here: Final Project Additional Files: link 1

Course Topics and Lecture Slides

Future details are tentative.

DateLectureNotes
08/26/2024lecture01-ASIC.pdf
08/28/2024Verilog SyntaxSlides with helpful Verilog Syntax from Prof. Paul Jackson at Princeton University
09/02/2024
09/04/2024Sign ExtensionNumber representation, sign extension
09/02/2024Registers, clk, resetRegisters and Clk
09/09/2024Blocking nonblocking statementMore Verilog Examples, Blocking nonblocking statement
09/11/2024Fixed-point NumberFixed point number representation
09/16/2024Numeric BasicsSlides from reference book along with Verilog examples (covers numeric basics, Adders, Multi-input adder)
09/18/2024Verilog TestingOverview of Verilog testing and test benches.
09/23/2024adder/subtractor Adder/Subtractor, Multiplier
09/25/2024Registers with Enable and ResetModeling Registers with additional Reset or Enable signals
09/30/2024State MachinesState Machines and example with verilog
10/02/2024SquaringSquaring
10/07/2024Fixed Input MultsMultipliers
10/09/2024MemoriesOverview of Memories
10/14/2024Memory and FIFO Examples slidesMemory examples
10/16/2024Memory and FIFO Examples from bookexamples from book
10/21/2024look up table ROM verilogFixed point number reprsentation
10/23/2024Additional State Machine and memory examplesFSM and memory examples
10/28/2024comparator sortcomparator, sort example
10/30/2024ASICASIC design flow
11/04/2024ASIC ComparisonSlides from Prof. Koushanfar
11/06/2024
11/11/2024
11/13/2024
11/18/2024
11/20/2024
11/25/2024
11/27/2024
12/02/2024
12/04/2024
12/09/2024
12/11/2024
12/16/2024
12/18/2024
12/23/2024
12/30/2024