EE 224 – DIGITAL SYSTEMS
Academic Year : 2013-2014
Professor : Sachin Patkar
Motivation :
The motivation of the course is that a student, at the end should :
- Design and understand digital systems of medium complexity
- Describe and synthesize digital systems using high level Hardware Description Language
- Understand the operation of computers, and all other digital systems, at the most fundamental level.
Course content:
The official content is here. It is followed to quite a large degree.
Overview of digital logic – most of this is covered in EE 112 . Basics of boolean algebra, combinational circuits, sequential circuits, combinational gates, karnaugh maps. Later: basics of counters, latches and flip flops.
Hardware Description Language (HDL) – high level HDL Verilog. The synthesis and simulation aspects of Verilog, elementary usage of Verilog for describing combinational and sequential circuits, and their simulation testing, Verilog description of some basic ICs.
Practical Implementation of logic gates -TTL logic, MOS implementation of logic gates, delay in CMOS gates, and calculation of various important parameters. Study of the propagation delays in any logic network.
Finite State Machines (FSMs) – starts with FSM view of counters. ASMs are also introduced, and FSM design is covered in reasonable amount of detail. Data path, control path are studied, and FSM description on Verilog is covered, applications of FSMs are also looked into.
Moving towards VLSI -The course ends with a study of CMOS memory circuits, memory devices, and programmable logic devices (PLDs). This is a very limited overview, but it gives a lot of insight into how memory systems work, how simple operations of read and write are performed on such a large scale, and the course ultimately moves towards VLSI design.
Prerequisites :
There are no prerequisites as such. Initially, the basics of digital logic are covered very rapidly, as it is assumed that people have already done it in EE 112, but it is nothing that can not be done by putting in about a couple of extra hours for a week.
Feedback on lectures :
Most lectures are fairly interesting, and are easy to follow, after the initial few days. Problems are taken up in class from time to time, which are interesting to think about, and help in understanding of the concepts covered.
Feedback on tutorials, assignments, and exams :
Most tutorials are discussed in class, and help in understanding of the concepts covered in class. Some of them, for example, the one related to FSMs, are particularly helpful.
Assignments do not require a lot of effort, and are usually a more detailed revision of what is done in class. Effort needs to be put in the Verilog assignments, and people who put in effort to do the Verilog assignments accordingly develop a much better understanding of the language.
Exams are open book, generally lengthy, and not as interesting as they can be, and there aren’t any questions which one can not answer if he has attended all the lectures, and done all the assignments and tutorials.
Difficulty :
Pretty easy, especially if you like logic. Not as information based as Power Electronics or Analog Circuits; or abstract like Signals and Systems. (All of these are also second year second sem courses.)
Grading:
Any course which has Prof Patkar involved will have decent grading.
AP 1
AA 24
AB 46
BB 28
BC 15
CC 10
CD 9
DD 1
FR 3
Study Material and References :
The two major books are :-
- Tocci,Widmer,Moss : “Digital Systems : Principles and Applications “,
- Brown, Vranesic : “Fundamentals of Digital Logic with Verilog Design”.
All other reference material is provided by the instructor.
Miscellaneous :
This year the Btech and DD students had different professors taking this course. Prof Patkar taught the DD students.
Advanced courses that can be taken after this course:
This course opens up a plethora of courses you can take. Undergraduate courses like Microprocessors are compulsory for EE students.
Some graduate courses which you can do immediately after this:
- VLSI Design – expands on the design and implementation part of the course
- Foundation of VLSI CAD is a must if you liked digital logic
- VLSI Design Lab – if you enjoyed HDL coding
Other courses which can be taken later: Processor Design, Systems Design, Mixed Signal Design, Testing and Verification of VLSI Circuits and many more.
Reviewed by Kush Motwani (kushmotwani1@gmail.com), with inputs from Sahil Agarwal (agarwalsahil168@gmail.com).