Engr315

Welcome to ENGR 315

Fall 2025

Description

Welcome to ENGR E315 (and CSCI B590)

This course provides an introduction to hardware/software interaction and using hardware to accelerate software-based applications. A more detailed description can be found in the syllabus.

Syllabus

Lecture Slides

Other Downloads

Autograder

Zoom

Remote Setup

Pynq Network Setup

Projects

P1 - Optimization

P2 - EMA in C

P3 - EMA in HW

P4 - MMIO Popcount

P5 - MMIO Popcount in C

P6 - DMA Popcount

P7 - DMA Popcount in C

P8 - Dot Product

PX - Accel Dot

Course Schedule

This is the tentative schedule for this semester.

Date Day Number Lecture Topic Project Topic
08/27 Wednesday 00/01 Performance Profiling P1 Optimization(Py)
09/03 Wednesday 02/03 Performance Profiling II P2 Exp Mov Avg (C)
09/10 Wednesday 04/05 Buses P3 Exp Mov Avg (V)
09/17 Wednesday 06/07 MMIO P3 Exp Mov Avg (V)
09/24 Wednesday 08/09 High Performance Buses P4 MMIO Popcount (V)
10/01 Wednesday 10/11 Memory / Tristate P5 Linux MMIO (C)
10/08 Wednesday 12/13 C / Linux Interfacing P5 Linux MMIO (C)
10/15 Wednesday 14 Direct Memory Access P6 DMA Popcount (V)
10/22 Wednesday 15 Direct Memory Access P6 DMA Popcount (V)
10/29 Wednesday 16 Pipelining I P7 Linux DMA (C)
11/05 Wednesday 17 Pipelining II / Review
11/12 Wednesday Exam P8 Dot (V)
11/19 Wednesday 18 Parallelism I P8 Dot (V)
11/26 Wednesday BREAK PX Accel Dot (V)
12/03 Wednesday 19 Parallelism II PX Accel Dot (V)
12/10 Wednesday Overflow PX Accel Dot (V)
12/17 Wednesday Final Report Due @ 06:55pm PX Accel Dot (V)