E0 217: Efficient and Secure Digital Circuits and Systems (August 2022)

 

Instructor: Utsav Banerjee

Lecture Timings: Monday & Wednesday 11am-12pm

Lab / Tutorial Timings: Thursday 5:30pm

Location: 2nd Floor Classroom (DESE 305)

Teaching Assistants: Faiek Ahsan and Kollipara Abhishek Anand

 

Course Description: This is an introductory graduate-level course on the design and analysis of digital circuits and systems with an emphasis on efficient and secure implementation aspects. This course will cover co-optimization of circuits, architectures and algorithms for the design of application-specific digital systems with different power, performance, area and energy-efficiency requirements. Techniques for securing such systems using efficient implementation of encryption, authentication and side-channel countermeasures will also be covered. Various digital circuit and system concepts will be introduced using a combination of lectures, homework assignments and a project.

Prerequisites: Basic understanding of digital electronic circuits.

Credits: 2:1

Syllabus:
▶ Circuits: overview of CMOS digital circuit design, logic gates, combinational and sequential logic, finite state machines, arithmetic circuits, memories, timing considerations, power consumption
▶ Systems: overview of computer architecture, instruction set, hardware-software interaction, micro-controllers, hardware acceleration, FPGA and ASIC design
▶ Efficiency: gate-level optimization for power-performance-area, low-power versus energy-efficient implementation, pipelining, multi-level memories and caches
▶ Security: introduction to cryptography and security protocols, implementation of multi-precision modular arithmetic, timing and power side-channel attacks and countermeasures

References:
1. J. M. Rabaey, A. P. Chandrakasan and B. Nikolic, “Digital Integrated Circuits: A Design Perspective”.
2. N. H. E. Weste and D. M. Harris, “CMOS VLSI Design: A Circuits and Systems Perspective”.
3. D. M. Harris and S. L. Harris, “Digital Design and Computer Architecture”.

4. M. M. Mano and M. D. Ciletti, “Digital Design”.
5. Journal / Magazine Articles and Conference Papers.

 

Grading: The grade will be based on ten problem sets, two mid term exams, a final exam and a project. Assignments must be submitted by 11:59pm on the day they are due. Late submissions will not be accepted for grading. The final grade will be calculated approximately based on the following weights: Problem Sets (20%), Mid Term Exam 1 (15%), Mid Term Exam 2 (15%), Final Exam (30%) and Project (20%).

Problem Sets: The problem sets will contain questions based on numerical calculations as well as circuit / system / software simulations. Various open-source tools will be used for the simulation tasks and their setup instructions will be shared during the lab tutorials.

Project: There will be a set of well-defined projects to choose from and conduct in groups of 2-3. These projects will provide hands-on experience with the analysis and implementation aspects of digital circuits and systems.

Course Materials: Lecture slides, tutorials, simulation models, projects and additional readings will be shared using a Microsoft Teams group which will be accessible only to registered students.

 

Schedule:

Lecture Topic
1 Introduction and Course Overview
2 MOS Transistor
3 CMOS Inverter (Part 1)
4 CMOS Inverter (Part 2)
5 CMOS Inverter (Part 3)
6 Combinational Logic (Part 1)
7 Combinational Logic (Part 2)
8 Sequential Logic (Part 1)
9 Sequential Logic (Part 2)
10 Power Consumption
11 Arithmetic Circuits (Part 1)
12 Arithmetic Circuits (Part 2)
13 Memories
14 Design Trade-Offs (Part 1)
15 Design Trade-Offs (Part 2)
16 Processor Architecture (Part 1)
17 Processor Architecture (Part 2)
18 Processor Architecture (Part 3)
19 Processor Architecture (Part 4)
20 Hardware Accelerators
21 Cryptography and Hardware Security
22 Modular Arithmetic Implementation
23 Side-Channel Analysis (Part 1)
24 Side-Channel Analysis (Part 2)
25 Advanced Topics