Basic Information
- Course Code: EE 712
- Course Name: Embedded Systems Design
- Course Offered In: 2022-‘23
- Semester Season: Spring
- Instructors: Laxmeesha Somappa, Dinesh Sharma
- Prerequisites: EE309 should be sufficient. Mainly, C-programming and the basics of microprocessors are required. The professor only allowed DD and post-grad students of EE5 and EE6 to register for the course.
- Difficulty (1 being easy and 5 being tough): 4
Course Content
Course is theory + Lab. Theory: ADC, DAC interfacing, I/Os, serial interfacing, ARM Cortex A8 architecture. Embedded software and OS: processes, process scheduling, watch dog timers, priority inversion and priority inheritance, file systems, threads, signals. Introduction to FPGA and its architecture. Introduction to the Zynq-7000 SoC. SOC interconnects/data movement.
Labs: 4 labs were based on a TIVA-C microcontroller. 3 labs with a PYNZQ-Z2 (FPGA) board.
The course project involved at the end is based on concepts learned in the course.
Feedback on Lectures
Embedded software and OS parts were covered by Prof. Dinesh Sharma. All other parts of the course content were covered by Prof. Laxmeesha.
Attending the lectures for the part covered by Prof. Laxmeesha is essential. The slides for this part were not in full detail. You may need to take notes during the lectures. Prof. teaches very interactively by asking many questions in the class itself, so it is important to keep attention in the class. The slides were enough and were in detail for the part covered by Prof. Dinesh Sharma.
The labs were take home. TAs and sometimes professors gave an introduction to the labs during lecture hours. Separte lab time (every Thursday in the 2–5 PM slot) was allotted, which was conducted mainly by TAs. Though attending these labs was optional, it was mainly for the students who were having difficulties doing lab work. Labs based on the PYNQ-z2 FPGA board might be overwhelming in the beginning and you may need to go through some online materials to clearly understand this part.
Feedback on Evaluations
Midsem: 25% Endsem: 35% course project: 40%
The questions in the midsem and endsem were conceptual and application-based. 2-4 pages of handwritten cheat sheets were allowed for both examinations. Going through the slides and attending lectures were good enough to score good marks. There were 1-2 questions in the exam based on the labs. Completing the lab would help to solve those questions.
Labs were not used for evaluation. The course project was to be done by a team of three students. You can take inspiration from the labs to decide the topic of your course project. The final presentation was conducted after the endsem.
Study Material and Resources
Slides are enough. Taking lecture notes for the part covered by prof. Laxmeesha might be useful. You may need to read some online materials to clearly understand the FPGA, SOC interconnets part. No other reference book is really necessary to prepare for exams.
Follow-up Courses
None
Final Takeaway
EE712 is a great course and deals with both theorotical and practical concpets of embedded systems. It also gives the good flavour of FPGAs. One should consider taking it if he/she wants to get into embedded software domain.