Advanced Techniques in Digital Design
FIT-PNDAcad. year: 2020/2021
This course introduces advanced techniques for digital design. It is focused on logic synthesis and verification of complex logic circuits, efficient utilization of hardware and software and modern technology to construct hardware devices. In particular, the following topics will be discussed: Advanced logic synthesis and verification, high-level synthesis, hardware/software codesign, low power design and reconfigurable computing. The mentioned approaches and techniques will be illustrated on the design of application specific systems.
Areas of questions for the state doctoral examination
- Principles of logical synthesis of digital circuits (representation, optimization, mapping).
- Modern approaches to the synthesis of digital circuits (AIG, BDD, functional equivalence verification).
- HW synthesis from higher programming languages (representation, allocation, planning, binding).
- Application of constraints.
- Verification of digital circuits, OVM methodology.
- Processing technologies (FPGA, 3D IC, IP-core, hard / soft CPU, DSP, etc.).
- Embedded systems, SW architecture.
- Methodology of designing HW / SW signature codes, platforms, programmable logic circuits.
- Reconfigurable computing.
- Design techniques for energy efficient and low-power systems.
Learning outcomes of the course unit
Students will be able to use modern techniques, tools and technologies for the design of hardware devices.
Using modern techniques to design hardware devices.
Recommended optional programme components
Recommended or required reading
Victor Kravets, Alan Mishchenko, Smita Krishnasamy, Nilesh Modi, Robert Brayton, Ruchir Puri, Kanupriya Gulati, and Sunil Khatri. 2010. Advanced Techniques in Logic Synthesis, Optimizations and Applications. Springer Publishing Company, Incorporated.
Micheli G., High-Level Synthesis from Algorithm to Digital Circuit, ISBN 978-1-4020-8587-1, 2008
Joo Manuel Paiva Cardoso, Jos Gabriel de Figueiredo Coutinho, and Pedro C. Diniz. 2017. Embedded Computing for High Performance: Efficient Mapping of Computations Using Customization, Code Transformations and Compilation. Morgan Kaufmann Publishers Inc., San Francisco, CA, USA.
Marwedel, P.: Embeded System Design: Embedded Systems Foundations of Cyber-Physical Systems and the Internet of Things, 3rd Edition. Springer, USA, 2018, ISBN 978-3-319-56043-4.
J. M. Rabaey, Low Power Design Essentials, Series on Integrated Circuits and Systems, New York, NY: Springer New York, 2009.
Sarkar, Angsuman, Swapnadip De, Manash Chanda, and Chandan Kumar Sarkar. 2016. Low Power VLSI Design Fundamentals
Planned learning activities and teaching methods
Assesment methods and criteria linked to learning outcomes
Language of instruction
To understand advanced techniques in design of complex digital systems. To be able to use modern technology and systems for digital design to build new hardware devices. To understand modern principles of logic synthesis and get advanced knowledge in hardware/software codesign and reconfigurable computing.
Specification of controlled education, way of implementation and compensation for absences
Elaboration and presentation of a project.
Type of course unit
39 hours, optionally
Teacher / Lecturer
- Introduction: Summary of current approaches to digital design.
- Modern approaches to the logic synthesis of digital circuits, optimization at the logical level and the target technology. Models and methods of synthesis (AIG, BDD,functional equivalence checking).
- Synthesis of circuits from high-level programming languages (circuit representation, process planning, allocation and assignment of resources).
- Functional verification of digital circuits with respect to the coverage of source codes, states, etc. The synergy of logic synthesis and verification. OVM methodology.
- Embedded computer system, design of embedded systems with microcontrollers, specification of requirements for embedded systems.
- The methods to select appropriate target platform for the embedded system, processes to select appropriate key components of the system.
- Typical software architecture of embedded system. Testing, debugging and diagnostics of embedded systems.
- Modern computing technologies, structures and heterogeneous platforms (FPGAs 3D IC, IP-core, hard / soft CPU, DSP etc.).
- Concurrent design of embedded HW / SW systems (models, distribution, estimates, synthesis, integration, optimization).
- Reconfigurable computing - acceleration in hardware with flexibility of software. (reconfiguration, design tools for C / C ++ high-level synthesis etc.).
- The design of embedded systems with respect to the energy consumption (power reduction at various levels, ambient energy sources and their use etc.).
- Acceleration of application-specific time-critical operations (network traffic processing, image processing, etc.).
- Recent trends in technology, logic synthesis and reconfigurable computing.