|
|
ECEN 2120
Information
Assignments
Lecture Schedule
Supporting Material
Syllabus
Staff
|
|
Computers as Components
Class Schedule
This schedule is organized by weeks.
All of the class periods for the week are listed, and
a lecture title, an hour examination or a holiday is given for each.
Lecture titles are accompanied by a list of sections from the
textbook that are relevant to that lecture.
When a sequence of lectures is devoted to the same material, all
are listed with the same title.
In this case, relevant sections of the text are listed only for the
first lecture in the sequence.
Subsequent lectures bear the notation ``(continued)''.
The homework exercise that you should be working on during the week
is listed, along with the important ideas covered by that homework.
Each homework title is a link to the corresponding assignment.
Quick link to a week:
| Dates | Week |
| 8/24-8/28 |
#1 |
| 8/31-9/4 |
#2 |
| 9/7-9/11 |
#3 |
| 9/14-9/18 |
#4 |
|
| Dates | Week |
| 9/21-9/25 |
#5 |
| 9/28-10/2 |
#6 |
| 10/5-10/9 |
#7 |
| 10/13-10/16 |
#8 |
|
| Dates | Week |
| 10/19-10/23 |
#9 |
| 10/26-10/30 |
#10 |
| 11/2-11/6 |
#11 |
| 11/9-11/13 |
#12 |
|
| Dates | Week |
| 11/16-11/20 |
#13 |
| 11/23-11/27 |
#14 |
| 11/30-12/4 |
#15 |
| 12/7-12/11 |
#16 |
|
-
- Course goals
- Course mechanics
- Complex systems from a digital perspective
-
- Registers and memory
- Expression evaluation and the stack
Required reading:
- Text
Chapters 1,
2,
4,
Sections 5.2.1,
5.3,
5.4,
6.1
-
- The condition code
- Conditional jumps
- Unconditional jumps
Required reading:
- Text
Sections 4.2.6,
4.2.7,
4.2.8,
6.2
-
- How the call and return operations use the stack
- Passing arguments via the stack
- Use of A6 to access arguments
- Saving and restoring state
Required reading:
- Text
Section 4.2.4,
4.2.6,
6.3,
9.4
-
- Allocation of program structures to memory
- Public symbols
- C naming conventions
Required reading:
-
- Representation of integers
- Translation of numbers from decimal to binary
- 2's complement arithmetic
- Signed and unsigned numbers
- Signed and unsigned condition code interpretations
Required reading:
- Text
Section 3.1,
7.1,
7.2,
7.3,
7.4
-
-
- Representing things other than integers
- C calling conventions
Required reading:
-
- Bitwise operations
- Masks
- Shifts
- Decoding an instruction
Required reading:
-
- How directives are used to separate data layout from code
- Storage reservation and data generation
- ORG, EQU, DC
Required reading:
-
- Interface specifications
- Use of the stack for local variables
- The concept of an activation record
- Printing integer values as digit sequences
Required reading:
-
- Separation of concerns and information hiding
- Visibility and lifetime
- Assembly and linkage
Required reading:
-
- Separate address spaces
- Contiguous address spaces
Required reading:
- Text
Sections 9.3.1, 9.3.3, 9.3.4
-
- Decimal arithmetic
- Address manipulation instructions
- Looping instruction -- DBcc
Required reading:
- Text
Sections 3.2,
7.5,
9.1,
6.2.4
-
- What would you like to see?
-
- Access to I/O devices
- The RS-232 interface
- The function of a UART
Required reading:
-
- Programming the UART
- Writing characters to the UART
- Reading characters from the UART
10/2: Review for Exam 1
-
-
- How interrupts affect the CPU
- When interrupts can and cannot occur
- Interrupt priority
Required reading:
-
- Interrupt-driven serial I/O
-
- Buffering for data-rate averaging
- Use of multiple buffers
- Circular buffers
Required reading:
-
- Circular buffer management routines
-
- The cost of interrupt-driven I/O
- Block transfer data paths and cycle stealing
- Bus timing
- Interaction between DMA controller and device controller
Required reading:
-
- Setup operations for block transfer
- Bus mastery
-
- Sampling analog waveforms
- Conversion between analog and digital representations
Required reading:
-
- Cooperating sequential processes
- Minimal assumptions about process behavior
- Critical sections and mutual exclusion
- Semaphores
- Preemptive and non-preemptive scheduling
Required reading:
-
- The system clock
- Use of timers
- Timer modes - auto-reset and square wave generation
- Timers and interrupts
Required reading:
-
-
- Semaphores and buffers
- Dining Philosophers
Required reading:
-
- IEEE standard number representation
- Normalization
- What is ``roundoff'' error?
Required reading:
-
- Closely-coupled processors
- Coding of floating-point operations
- Example: NVidia's CUDA library for its GPUs
Required reading:
-
Required reading:
-
- This time can also be used to catch up
-
-
Required reading:
-
-
- Description of caches
- Cache design issues
- Direct Mapped Caches
Required reading:
-
- Fully Associative Caches
- Set-Associative Caches
11/23 - 11/27: Fall Break - No Classes
11/30 - 12/4: Complex Data Structures in C and Assembly
12/7 - 12/9: Complex Data Structures in C and Assembly (continued)
-
Final examination: Wednesday, December 16, 2007, 7:30pm-10:00pm.
|