CMU 18-744: Hardware Systems Engineering

Course Syllabus

www.ece.cmu.edu/~ece744

 

 

 

Week

Date

 

 

Class

 

Downloadable Handouts

 

1

1/13

L1

 

 Course Intro and Verilog Review

 

 handout #0 course survey

 handout #1 administrative info

 

Downloadable from IEEE Xplore

- The MIPS R10000 Processor

 by Yeager

- Checkpoint Processing and Recovery:

Towards Scalable Large Instruction Window Processors by Akkary Rajwar and Srinivasan

 

 

1/15

L2

 

 RTL Verilog Synthesis

 

 

 

2

1/20

L3

 

 How to Approach a Design Problem

 

 

 

 

1/22

L4

 

 Project 1 Overview

 

 handout #2 project 1 description

 

3

1/27

L5

 

 Register Dataflow Warmup

 

 

 

 

1/29

L6

 

 Operation Timing

 

 

 

4

2/3

L7

 

 Memory Dataflow

 

 Project 1, Step 1 due

 

 

2/5

 

 

 No Lecture

 

 

 

5

2/10

L8

 

 In class code review

 

 Sample step 1 in  

 ~ece744/TURNBACK/sample/

 

 

2/12

L9

 

 Branch Rewind

 

 PISA reference

 

 

6

2/17

L10

 

 SystemVerilog

 

 Project 1, Step 2 due

 - SystermVerilog 3.1 Reference

 - Introduction to SystemVerilog   

    by Sutherland and Mills

 - also see other info available on

   Sutherland-HDL

 

 

2/19

L11

 

 C for Hardware

 

Downloadable from IEEE Xplore

 

- An efficient implementation of reactivity for modeling hardware in the Scenic design environment by Liao, Tjiang and Gupta  

               

- Deductive verification of advanced out-of-Order microprocessors by Lahiri and Bryant

 

7

2/24

L12

 

 Guest Lecture by Shuvendu Lahiri

Formal Verification Methods for Hardware Systems

 

Downloadable from IEEE Xplore

 

- The Alpha 21264

Microprocessor by Kessler

 

 

2/26

L13

 

 Guest Lecture by Shuvendu Lahiri

Formal Verification of Microprocessors

 

 

 

8

3/2

L14

 

 Discussion: The Alpha 21264 Microprocessor by Kessler

 

 Project 1, Step 3 due

 

 

3/4

L15

 

 Discussion: Checkpoint Processing and Recovery: Towards Scalable Large Instruction Window Processors by Akkary Rajwar and Srinivasan

 

 

 

9

3/9

 

 

 No Lecture (Spring Break)

 

 

 

 

3/11

 

 

 No Lecture (Spring Break)

 

 

 

10

3/16

L16

 

 Intro to Operation-Centric Design

 

 Project 1, Step 4 due

 Bluespec Language Reference Manual

 

 

3/18

L17

 

 Synthesis of Operation-Centric Design

 

 

 

11

3/23

L18

 

 Intro to Bluespec

 

 Project 1, Step 5 due

 

 handout #3 project 2 description 

 (requires lab description from Bluespec Short Course)

 

 

3/25

L19

 

 - Introduction (Bluespec Short Course: Lecture 1)

 - Two-stage Pipeline Processor (Bluespec Short Course: Lecture 6)

 

 

 

12

3/30

L20

 

 Bluespec Coding Clinic

 

 

 

 

4/1

L21

 

 - Bluespec Programming (Bluespec Short Course: Lecture 3)

 - Advanced Processor Examples (Bluespec Short Course: Lecture 7)

 

 Project 2 due

 

 handout #4 project 3 description 

 

13

4/6

L22

 

 - Caches and BTBs (project 3)

 

 

 

 

4/8

L23

 

 - Project 2 code review

 

 

 

14

4/13

L24

 

 - Hierarchical FSM

 

 

 

 

4/15

 

 

 No Lecture (Spring Carnaval)

 

 

 

15

4/20

L25

 

 - Synchronous Dataflow

 

 

 

 

4/22

L26

 

 - Project 3 Design Review

 

 

 

16

4/27

L27

 

 Project Presentations

 

 Project 3 due (4/26)

 

 

4/29

L28

 

 Project Presentations

 

 Last Day of Class

 

Please contact Professor Hoe for handouts not available for download.