Skip to content

FPGA Code Reports

Holds code for CYCUEE FPGA Application course. Go to source to see more.

Most of the code related to CPU structure are acquired from teaching materials of Prof. YU-PING LIAO.

Result Reports

Each homework has its result edited, summarized, converted into PDF format stored in my github repository.

HW1 Environment Installation

Hw1

Setup Intel Quartus Prime Lite Edition development environment.
Head to report: https://github.com/belongtothenight/FPGAA_Code/blob/main/report/w1hw.pdf

HW2 Implement Half Adder

Hw2

Code a half adder module and perform simulation.
Head to report: https://github.com/belongtothenight/FPGAA_Code/blob/main/report/w3hw.pdf

HW3 Implement 4 bits calculator

Hw3

Code functionality of addition, subtraction, multiplication, and division.
Head to report: https://github.com/belongtothenight/FPGAA_Code/blob/main/report/w4hw.pdf

HW4 Implement Controlled counter

Hw4

Code a counter triggered by external button and switches with debouncer functionality. Also another version triggered with internal clock.
Head to report: https://github.com/belongtothenight/FPGAA_Code/blob/main/report/w5hw.pdf

Midterm Project

Midterm

Code a 24-hour clock with a visual effect of laser destroyable numbers.
Head to report: https://github.com/belongtothenight/FPGAA_Code/blob/main/report/mid.pdf

HW5 Implement data register

Hw5

Code a CPU data register with the guide of course teaching prof..
Head to report: https://github.com/belongtothenight/FPGAA_Code/blob/main/report/w9hw.pdf

HW6 Implement more CPU structure 1

Hw6

Code following CPU structure with the guide of course teaching prof..
1. Read only memory.
2. Data direct system.
3. Write address control system.
4. Full data pipeline.
Head to report: https://github.com/belongtothenight/FPGAA_Code/blob/main/report/w10hw.pdf

HW7 Implement more CPU structure 2

Hw7

Code stack, stack pointer, counter, controller execute instruction besides algorithmic instructions.
Head to report: https://github.com/belongtothenight/FPGAA_Code/blob/main/report/w11hw.pdf

HW8 Use CPU instructions to perform I/O actions

Hw8

Code a frequency divider to observe affects of instructions. LEDs and 7-segment displays are used to display CPU output.
Head to report: https://github.com/belongtothenight/FPGAA_Code/blob/main/report/w12hw.pdf

HW9 Use signal tap logic analyzer

Hw9

Use functionality of Signal Tap Logic Analyzer to analyze output of CPU with given instructions.
Head to report: https://github.com/belongtothenight/FPGAA_Code/blob/main/report/w13hw.pdf

HW10 Use State Machine to play music

Hw10

Use state machine to play pre-set song automatically.
Head to report: https://github.com/belongtothenight/FPGAA_Code/blob/main/report/w14hw.pdf

Final Project

Final

Use different method to achieve the same result as midterm project.
Head to report: https://github.com/belongtothenight/FPGAA_Code/blob/main/report/final.pdf