Xierumeng's Personal Website

I may or may not know what I'm doing.

4-3. 3A

2022-09-21

Note: Course experiences


Skip table of contents


This is part of a 5-part series on the upper year experience at the University of Waterloo.

Today’s topic will be on 3A. I will talk about each individual 3A course experience.

This term is the workload-heaviest term I have taken in my undergraduate career (so far). 5 labs is not a fun time. This is caused by the 3A elective slot being swapped with the 2B ECE 298 lab course as the ECE department delayed ECE 298 in the hope that it would be in-person (it did not end up being in-person). Normally, this term has the first elective slot (choices!).

# ECE 3A S21 Courses

Courses:

  • ECE 298 Instrumentation and Prototyping Laboratory (PCB)
  • ECE 318 Analog and Digital Communication (Between the transmitter and receiver)
  • ECE 327 Digital Hardware Systems (FPGAs and similar)
  • ECE 350 Real-Time Operating Systems (Kernel)
  • ECE 380 Analog Control Systems (Feedback)

Difficulty: (Hard) ECE 318 > ECE 350 > ECE 327 > ECE 298 > ECE 380 (Easy)

Interest: (Cool) ECE 327 = ECE 350 > ECE 380 > ECE 298 > ECE 318 (Tedious)

Disclaimer: The above two scales are relative, not absolute.

Note: The ECE department swapped ECE 298 with the 3A elective. Therefore I took ECE 298 this term and ECE 206 as my elective in 2B.

# ECE 298 Instrumentation and Prototyping Laboratory

PCB.

This is THE course of the term. It was supposed to be a 0.25 credit lab course but was definitely as much work as a full course. Term project that involves prototyping some hardware, low-level firmware to run it, and then putting it all together on a PCB.

With the computer congestion (we had to use software that was only available on the lab computers) and cumulative labs, this course was terribly run. Additionally, there was not enough instructional support, so a bunch of Piazza questions were left unanswered and there was much confusion with requirements.

# ECE 318 Analog and Digital Communication

Between the transmitter and receiver.

This is THE course of the term. I did not understand the content, but the TA notes saved me. The professor was horrible and killed any interest I had in communication systems.

# Labs

Because ECE 318 labs were online we were forced to use a crappy simulator, but it was just following instructions.

# ECE 327 Digital Hardware Systems

FPGAs and similar.

Really fun course where we developed non-traditional data-driven hardware, and shows how CPUs are just a subset of possible hardware styles. Unfortunately, most of the lecture videos got removed so I can’t access them anymore.

# Labs

The ECE 327 labs led up to implementing a matrix multiplier using a systolic array.

# ECE 350 Real-Time Operating Systems

Kernel.

This course was also pretty close to being THE course of the term.

The nitty-gritty of what really goes on when allocating memory, scheduling threads/processes to run, locks, and all the low-level code that’s barely above the assembly and hardware.

# Labs

The content was fine, but the ECE 350 labs take an enormous amount of time and energy, possibly the most intense workload I have experienced in my undergraduate career.

My group spent 60 man-hours on the first lab and it got worse from there, especially since it was online so groups couldn’t bounce ideas off each other. You will learn that comprehensive test suites take a huge amount of effort and debugging is a massive pain when your program jumps all over the place for no apparent reason. It’s worse than ECE 252.

# ECE 380 Analog Control Systems

Feedback.

Straightforward course with plenty of block diagrams and determining how systems behave (stability, overshoot, settling time, etc.) when changing their scalar factors. However, memorizing all the rules (root locus, Nyquist, etc.) was a pain.

ECE 105 content makes a surprise comeback in test 1, enjoy!

# Labs

ECE 380 labs were about using MATLAB to simulate control systems. Apparently, the in-person labs are using a real physical system, which is a pain.

# Conclusion

The important information to take away is 3A courses.

Check out:



© 2023 Xierumeng. All rights reserved.