COM SCI M51A
Logic Design of Digital Systems
Description: (Same as Electrical and Computer Engineering M16.) Lecture, four hours; discussion, two hours; outside study, six hours. Introduction to digital systems. Specification and implementation of combinational and sequential systems. Standard logic modules and programmable logic arrays. Specification and implementation of algorithmic systems: data and control sections. Number systems and arithmetic algorithms. Error control codes for digital information. Letter grading.
Units: 4.0
Units: 4.0
Most Helpful Review
Winter 2021 - Professor Abari does not have a mean bone in his body. He is so extremely kind and knowledgeable on the topics. The class has somewhat of a higher than average learning curve, but once you got it, it was fairly straightforward and logical. I think Professor Abari did too good of a job, though. I think everyone did well so I'm expecting some sort of grade deflation unfortunately. We will see (I really hope not). Overall, if you have the opportunity to take any class with professor Abari, take it. He is excited about the topics, and that kind of energy translates into the students as well. I only wish I could've taken the course in person.
Winter 2021 - Professor Abari does not have a mean bone in his body. He is so extremely kind and knowledgeable on the topics. The class has somewhat of a higher than average learning curve, but once you got it, it was fairly straightforward and logical. I think Professor Abari did too good of a job, though. I think everyone did well so I'm expecting some sort of grade deflation unfortunately. We will see (I really hope not). Overall, if you have the opportunity to take any class with professor Abari, take it. He is excited about the topics, and that kind of energy translates into the students as well. I only wish I could've taken the course in person.
AD
Most Helpful Review
Fall 2023 - Darabi is a very kind professor and made the best out of our Friday 8 am lectures, but the class was still difficult to follow despite going to every lecture. I did not feel confident with most of the material until a few days before the midterm and final, and walked out of both tests feeling like I had done poorly. So, I do think the grading was pretty lenient. There are not many resources provided in terms of practice tests/past exams so while the tests were fair, studying for them was difficult. Overall I definitely learned a lot though. Some advice: make sure to set aside plenty of time for the homeworks, they started getting pretty difficult after the first one. Also make sure you understand the examples Darabi goes over in class and look in the textbook for more examples. Working with others on homework and studying makes it a lot more manageable.
Fall 2023 - Darabi is a very kind professor and made the best out of our Friday 8 am lectures, but the class was still difficult to follow despite going to every lecture. I did not feel confident with most of the material until a few days before the midterm and final, and walked out of both tests feeling like I had done poorly. So, I do think the grading was pretty lenient. There are not many resources provided in terms of practice tests/past exams so while the tests were fair, studying for them was difficult. Overall I definitely learned a lot though. Some advice: make sure to set aside plenty of time for the homeworks, they started getting pretty difficult after the first one. Also make sure you understand the examples Darabi goes over in class and look in the textbook for more examples. Working with others on homework and studying makes it a lot more manageable.
AD
Most Helpful Review
It is tough to rate this professor since M51A is such an awful class, but here goes. Ercegovac is a really nice guy that is very concerned about the students understanding of the material. He will go out of his way to encourage student feedback in class and tries to loosen the tension of Digital Circuit Design with geeky jokes. He is generally available outside of class and is always happy to answer questions, discuss the material or ask test questions to make you confident that you understand the material. With that said, the class is extremely difficult and I did not find Ercegovac to be a great lecturer. He goes over the material and does a lot of examples, but I generally found myself lost in class and stopped attending around 4th week. Clearly a lot of this is because of the material, but it is hard to say if other teachers would hold the students' interest better. Fortunately, the class was largely taught out of the book, so reading the book somewhat clarified things. The book isn't great though, so I would often go to office hours to essentially receive free tutoring from the TA. In retrospect, doing the reading before lecture probably would have made the class useful since the examples in class would have made sense to me and served as a review. I think the place I really learned the material was in trying to do the homework, since I would dig through the examples in the book and ask questions during office hours, until I finally understood how to solve the problems. I was also lucky enough to have a great TA, Pouya Dormiani, who went out of his way to explain things well in discussion section, office hours and reviews. Difficulty-wise, this class is hell. Being a CS major with no engineering background, it was like learning a new language where nothing made sense until around the 3rd or 4th week. Tough it out though, and the class becomes rewarding around the midterm when things start to make sense. By week 7 or 8 things are still hard, but move more toward pluggable modules that are easy to understand and highly applicable. Fortunately I did not give into the many temptations to drop the course, and by investing 10-20 hours a week into this class I managed to get an A. My main advise is to do the reading before lectures, and to take advantage of office hours. Start homework early and do the reading early, so you can attend office hours before you fall behind. Hopefully you get a good sense of what M51A with Ercegovac is like. Overall he is an average teacher, which compared to the other 51A teachers makes him look like a star. Since this class is going to be painful no matter what, I suppose it is at least good to take Ercegovac who goes out of his way to be helpful and nice. Hope for a good TA and plan to learn the material by manipulating Ercegovac and the TA's into 1-on-1 tutoring during office hours. I was amazed at how few people took advantage of this and that I was the only person that said to the TA during office hours "I am lost. Can you explain the difference between p-type and n-type mos, why we need both and how I implement each? Can you give me some examples I can do right now to make sure I understand?" Always remember that everyone else in the class is also completely lost, so even if you feel like you have no idea what's going on 90% of the time, you can still get an A. I thought I failed the final, and ended up getting 30% above the mean since everyone else also failed.
It is tough to rate this professor since M51A is such an awful class, but here goes. Ercegovac is a really nice guy that is very concerned about the students understanding of the material. He will go out of his way to encourage student feedback in class and tries to loosen the tension of Digital Circuit Design with geeky jokes. He is generally available outside of class and is always happy to answer questions, discuss the material or ask test questions to make you confident that you understand the material. With that said, the class is extremely difficult and I did not find Ercegovac to be a great lecturer. He goes over the material and does a lot of examples, but I generally found myself lost in class and stopped attending around 4th week. Clearly a lot of this is because of the material, but it is hard to say if other teachers would hold the students' interest better. Fortunately, the class was largely taught out of the book, so reading the book somewhat clarified things. The book isn't great though, so I would often go to office hours to essentially receive free tutoring from the TA. In retrospect, doing the reading before lecture probably would have made the class useful since the examples in class would have made sense to me and served as a review. I think the place I really learned the material was in trying to do the homework, since I would dig through the examples in the book and ask questions during office hours, until I finally understood how to solve the problems. I was also lucky enough to have a great TA, Pouya Dormiani, who went out of his way to explain things well in discussion section, office hours and reviews. Difficulty-wise, this class is hell. Being a CS major with no engineering background, it was like learning a new language where nothing made sense until around the 3rd or 4th week. Tough it out though, and the class becomes rewarding around the midterm when things start to make sense. By week 7 or 8 things are still hard, but move more toward pluggable modules that are easy to understand and highly applicable. Fortunately I did not give into the many temptations to drop the course, and by investing 10-20 hours a week into this class I managed to get an A. My main advise is to do the reading before lectures, and to take advantage of office hours. Start homework early and do the reading early, so you can attend office hours before you fall behind. Hopefully you get a good sense of what M51A with Ercegovac is like. Overall he is an average teacher, which compared to the other 51A teachers makes him look like a star. Since this class is going to be painful no matter what, I suppose it is at least good to take Ercegovac who goes out of his way to be helpful and nice. Hope for a good TA and plan to learn the material by manipulating Ercegovac and the TA's into 1-on-1 tutoring during office hours. I was amazed at how few people took advantage of this and that I was the only person that said to the TA during office hours "I am lost. Can you explain the difference between p-type and n-type mos, why we need both and how I implement each? Can you give me some examples I can do right now to make sure I understand?" Always remember that everyone else in the class is also completely lost, so even if you feel like you have no idea what's going on 90% of the time, you can still get an A. I thought I failed the final, and ended up getting 30% above the mean since everyone else also failed.
Most Helpful Review
I had Professor He for EE M16. I have nothing but good things to say about him. He is always funny and cheerful, and he always tells a cheesy joke halfway through class to wake us up. He does have a slight accent, but it is bearable. He will always try to cover as much as he can in his lectures. I feel that he is honestly easier than the other lecturers for this class. He had quizzes bi-weekly in discussion, and those were very fair. His midterms and final were definitely challenging but I did not feel cheated whatsoever. I would highly recommend this professor.
I had Professor He for EE M16. I have nothing but good things to say about him. He is always funny and cheerful, and he always tells a cheesy joke halfway through class to wake us up. He does have a slight accent, but it is bearable. He will always try to cover as much as he can in his lectures. I feel that he is honestly easier than the other lecturers for this class. He had quizzes bi-weekly in discussion, and those were very fair. His midterms and final were definitely challenging but I did not feel cheated whatsoever. I would highly recommend this professor.