BEng Computer Engineering - Year 2
2024-2027

Modules I Have Enjoyed most So Far

Electronics

I really enjoyed getting hands on experience with industry standard tools in my electronics labs - I learned to simulate circuits and how they affect signals using SPICE simulations; I learned to design, manufacture, and assemble a PCB using KiCad that involved my own RFID antenna and a ATTiny microcontroller; I learned the basics of ASIC design using LibreLane and my SystemVerilog knowledge; I learned about timing closure using AMD Vivado.
The lectures were also very interesting, covering everything from the filter design to the types of transistors and how they are used in chip design.

Digital Computer Systems

I really enjoyed Digital Computer Systems where I learned about computer architecture, digital logic, and even programming a Xilinx FPGA in Vivado using the SystemVerilog HDL. For the coursework for this module I designed in SystemVerilog each of the components of a primitive CPU, which I then programmed onto the FPGA, and used it to run assembly programs that I wrote.

High Level Programming

Further from the hardware, I enjoyed learning concepts like debugging and object oriented programming paradigms in High Level Programming, where I learned Python. These, in combination with further learning about version control in Git, have greatly improved my skills in working on large software projects involving multiple people.

Low Level Programming

Bridging ideas from those two modules, I found Low Level Programming’s insights into how I can extend my programming skills by thinking about the inner workings of a computer and the C/C++ compiler invaluable.