NUS Module Reviews - Y2S2

My Timetable AY2425 Sem 2.png

Only TAing CG2111A Thurs slot
EE4218 Lab on 9am-12pm (Not shown in timetable)

Major Modules

CG2023

Win tian tian

The strategy I feel for this module is to jump straight into the past year practices.

Our prof sometimes said that she feels more like the student at times, since she's the one going through the papers and tutorials, and our class is silent. If by any chance she's reading this, just want her to know that she's probably the only reason I even understand the content and problem solving technique. We might not be the best students but your efforts do pay off an really help us!!!

Expected Grade: A-
Actual Grade: A

CG2271

Transitionary Period for the Module. It's mostly like Ravi's edition/ Prof Colin's Edition in AY24/25 S1. Nothing much to say really, since the syllabus changed the next semester. Maybe Prof Trevor, being new to the module, was really really hands off (except for recitations), man attended 0 project sessions and not even the final run.

The project is the same, the robot race thing,

Finals was all on examplify, a fair bit of explanation questions (what is .....), some calculations. I only remember practicising CS2106 papers actually helped because it got me to revise multi-level page table, which was tested!!! This might be useful advice for future generations, as future iterations of the module would include more OS CS2106 stuff.

eh its ok i guess.

Expected Grade: A-
Actual Grade: A+

EE4204

It's not exactly that easy
Sure it's light workload but the concepts take a while to sink in.
Yes it can get quite annoying about how the prof wants participation, it does get in the way of learning.

Expected Grade: A-
Actual Grade: B+

Technical Electives

ST2334

Personally based off my experience with JC statistics, I knew that statistics wasn't something I really liked, so I took this instead of ST2131

The content before midterm was mostly just H2 Math Statistics, so refreshing those concepts

The content after midterm was building off H2 Math Statistics. You actually need to study and work hard to understand and master some of the concepts. This includes geometric distributions, poisson distributions, and more tricky stuff. I wouldn't say it's too hard tho.

I myself didn't really keep up with the tutorials, but I tried to do them somewhat regularly (once every 3 weeks?) I highly recommend doing all the tutorials and sample practice papers, they did help in reinforcing concepts.

The finals was tricky but not exactly impossible I feel. Many are careless here and I myself thought I made a lot of careless mistakes. I guess my grade told a different story

Expected Grade: B+
Actual Grade: A+

PC2020

I went into this module thinking it would be one of the hardest modules in the EE curriculum, but it is actually quite doable

Most of the module can be summarised into knowing what equation to use for the question. Not a deep conceptual understanding is needed to really do the questions, that said, it does help and it gave me an appreciation of Electromagnetism and EM Waves.

Unfortunately, I think it is quite low level to see any practical application to this knowledge.

1st part is quite engaging, Prof Soh really keeps his classes engaging with various props and tools. Furthermore, they are very focused on problem solving with the equations, so it was quite engaging

2nd part not so much, there's an element of proving which just lost me, and an element of solving the questions which was structured well enough.

So I've finished the module and am now working on certain projects, and the concepts of transmission lines, reflections and impedance matching turned out to be quite useful in analog and connector and CAN Buses, so I guess it was worth it after all.

The tests and examinations are all quite straightforward except maybe 1-2 questions meant to filter out the absolute top
You can probably get by with just knowing what formula to use and using them.

The notes they give are a bit convoluted and the concepts can take a while to get used to, but by knowing the intricacies, such as differentiating between a medium and free space, I think it is still ok.

Expected Grade: A-
Actual Grade: A

EE4218

This is one of the modules I'm most excited to take. And while I didnt exactly make something super fancy, the content is definitely applicable and useful.

One of the most interesting and useful modules I've seen in NUS.

The content covers various theoretical concepts, mainly focused on how to implement RTL onto an ASIC or an FPGA. This involves things such as parsing RTL, matching it into your technology library, optimising it to meet timing constraints, and more. You can think of it exactly like EE2026 theory, but more in depth. A fair bit overlaps with EE4415. It does increase appreciation, and some parts are applicable anyway.

The labs were interesting. We implemented matrix multiplication in HDL and HLS (High Level Synthesis). We used vivado, but also vitis and vitis classic, so we got exposure to the xilinx tool chain. The lab slot itself covered some useful concepts such as AXI DMA etc.

The project was rough but fun.
Most students ended up implementing a simple Neural Network, myself included. One interesting thing is that the project overlaps heavily with the Computer Engineering Capstone. There, there is a component where the student make an FPGA AI accelerator using PYNQ for classifying motion. A lot of the concepts and tools can be used for the EE4218 project also. We moved away from Vitis Classic to PYNQ.

Expected Grade: A-
Actual Grade: A

EE4415

Whoever said this was low workload is not exactly wrong.
But they didnt do homework 1.

The module is split into 2 parts, the first part by Prof Massimo more in the digital side, using Cadence Synopsys. The 2nd part by Prof Kelvin Fong more on the Analog analysis, dealing with circuit, voltage and current parameters and simulations of transistors using Cadence.

The first half was about optimising your sequential and combination Al logic circuits. It goes through the main problem of propagation and hold timings, and how to optimise your circuit to be faster while still functioning reliably. This involves techniques such as retiming, pipelining, etc.

I feel the midterm was very doable, mainly retiming, critical path timing analysis etc. The median was 40/50 or something. Don't take it from me tho, I scored 27/50 and idk why. The labs were quite straightforward, mainly following the instructions and using the software. It was about optimising and retiming an FP8 floating point 8 bit adder, which was quite decent.

The analog side is honestly a lot like CG2027, with a fair bit of content overlap. There was a lot of formulas thrown about but I'm not sure if they ended up needing to be used in the homework. It goes through how we design the logic gate primitive from transistors, and how the combinational delays, hold timings and more were calculated. It also shows Cadence Virtuoso, a tool to simulate circuits and to draw them on an IC chip. Kinda like PCB Design software.

The homework was about doing some calculations, and simulations of the circuits on Cadence. Homework 1 was very very tedious, changing the parameters by hand in the software and binary searching. Homework 2 was not so bad. I heard that the prof said that if the values/ shape of the graphs are about there its OK already.

I feel that throughout the module, the concepts they taught are quite interesting and useful, but there isn't exactly a lot of guidance on how to optimise it, which can lead to us being lost at times. The software they use is supposed to be the "state of the art", which turns out to look and feel quite ancient lmao, cli interface etc. That said you won't really get to use Synopsis and Cadence Virtuoso elsewhere.

Expected Grade: B
Actual Grade: B

Others

Oh i also took NEP3001AZ (IEx1), and CDE2605R (UREx). Both were spread out over a year and aren't really academic modules.