CSCE 611: Advanced Digital Design

Meeting Times: TTH 11:00 - 12:15

Location: Swearingen 1D39

Instructor: Dr. Jason D. Bakos

Textbook: Digital Design and Computer Architecture

Downloads

MIPS Reference Card: Pdf document[pdf]

Course syllabus: Pdf document[pdf]

DE2 User Manual Pdf document[pdf]

simpletest.s: Pdf document[asm]

simpletest.lst: Pdf document[lst]

simpletest_div4.lst: Pdf document[lst]

simpletest.s (GRADUATE STUDENTS): Pdf document[asm]

simpletest.lst (GRADUATE STUDENTS): Pdf document[lst]

simpletest_grad_div4.lst (GRADUATE STUDENTS): Pdf document[lst]

Example final exam: Pdf document[pdf]

Links

MIPS Instruction Set Architecture detail HTML document[html]

MIPS Instruction Set Architecture types HTML document[html]

MARS HTML document[html]

Blackboard HTML document[html]

CSE Dropbox HTML document[html]

Lectures

Lecture 1: Introduction to Behavioral Logic Design Ppt document[ppt] Pdf document[pdf]

Lecture 2: Design of a 32-bit ALU Ppt document[ppt] Pdf document[pdf]

Lecture 3: Timing Simulation and FPGA Verification of ALU Ppt document[ppt] Pdf document[pdf]

Lecture 4: Sequential Logic and Finite State Machine Controllers Ppt document[ppt] Pdf document[pdf]

Lecture 5: Designing a CPU Ppt document[ppt] Pdf document[pdf]

Lecture 6: Programmed I/O and Video Memory Ppt document[ppt] Pdf document[pdf]

Labs

Lab 1: ALU and Testbench Design Pdf document[pdf] Doc document[table]

Lab 2: ALU: Post Place and Route Simulation Pdf document[pdf] Doc document[table]

Lab 3: ALU: FPGA Verification Pdf document[pdf]

Lab 3b: Design of an Unsigned Integer Multiplier/Divider Pdf document[pdf]

Lab 4: Pipelined CPU Design Pdf document[pdf]

Lab 6 Notes: MyComputer Synthesis Notes Pdf document[pdf]

Lab 6 Notes: Progammed I/O and Video Memory Pdf document[pdf]

Tutorials

- ALU Design -

Tutorial 1: Getting Started... PDF document[pdf]

Tutorial 2: Creating Libraries PDF document[pdf]

Tutorial 3: Top-Level ALU Block Diagram PDF document[pdf]

Tutorial 4: Adding Sub-Blocks to the ALU PDF document[pdf]

Tutorial 5: Creating the Logical Sub-Block PDF document[pdf]

Tutorial 6: Simulating the Logical Sub-Block PDF document[pdf]

Tutorial 7: Creating the Shifter Sub-Block PDF document[pdf]

Tutorial 8: Simulating the Shifter Sub-Block PDF document[pdf]

Tutorial 9: Creating the Arithmetic Sub-Block PDF document[pdf]

Tutorial 10: Creating the Comparison Sub-Block PDF document[pdf]

Tutorial 11: Creating the Mux4Bus32 Sub-Block PDF document[pdf]

- Verification -

Tutorial 12: Creating the ALU Test Bench PDF document[pdf]

Tutorial 13: Post-Place and Route Simulation PDF document[pdf]

Tutorial 14: FPGA Verification of ALU PDF document[pdf]

- FSM Design -

Tutorial 14a: Finite State Machine Design PDF document[pdf]

- Processor Design -

Tutorial 15: Getting Started with the CPU Design PDF document[pdf]

Tutorial 16: Generating MIF Files and Implementing Instructions PDF document[pdf]

Tutorial 17: Initializing FPGA Memories After Design Implementation PDF document[pdf]

Supplemental Information

WISHBONE Bus Specification HTML document[html]

VHDL Quick Start PPT document[ppt]

MIPS32 Architecture For Programmers Volume IPdf document[pdf]

MIPS32 Architecture For Programmers Volume IIPdf document[pdf]

MIPS32 Architecture For Programmers Volume IIIPdf document[pdf]

SPIM

SPIM: A MIPS32 Simulator HTML document[html]

SPIM: Quick References HTML document[html]

Assemblers, Linkers, and the SPIM Simulator - by James R. Larus Pdf document[pdf]