Course Objective
For students to assimilate the necessary theoretical and practical knowledge around the various phases in the design and implementation of digital integrated systems with high performance requirements with design automation tools and hardware description languages, through a combination of lectures, exercises and workshops.
Learning results
Gain comprehensive knowledge around the analysis, specification, operation, design and implementation of very large scale integration (VLSI) digital integrated systems with high performance requirements, with design automation tools and hardware description languages. It also offers an introductory refresher on basic digital logic concepts.
Course Content
The course builds on the fundamentals of logic circuit design offered in the prerequisite course and has as its main objectives:
- the introduction to the design of combinational and sequential digital circuits
- the use of the Verilog hardware description language for their modeling and simulation as well as their implementation
- the implementation of digital systems in programmable logic devices (CPLDs and FPGAs)
- the study of the different types of memory used in computer systems
- gaining experience in the full cycle of the process of designing, simulating and implementing digital systems using modern computer tools through laboratory exercises
The following sections-chapters are covered:
- Logic gates, memory elements, combinational logic
- Two-level/multi-level implementation of logic functions, Combinational circuits (multiplexers, encoders, decoders), numerical combinational circuits (fast adders, multipliers, dividers, sliders)
- Sequential logic (registers, latches)
- Serial circuits (counters, shift registers, parallel load registers)
- Finite State Machines (FSMs).
- Verilog language (basics, behavioral, register transfer layer, structured code style)
- Representation of combinational circuits in Verilog
- Representing sequential circuits in Verilog
- Advanced Logic Design
- Design digital circuits with schematic input
- FPGA/ASIC Design Flow
- Design Automation Tools
- Simulation and verification of logic circuits (Verilog testbenches)
- Logical Synthesis of combinational and sequential circuits
- Placement and Routing
- Error models
- BJT and MOSFET models as switches
- CMOS implementation, VLSI layout, stick diagrams
- Redefining architectures, FPGA technology.
- Integrated circuit technologies
- Clocks, delays, distribution networks, synchronization, metastability issues
- SRAM, DRAM, Buses
- Piping, parallelism, performance gain