COMP20212: Digital Design Techniques (2008-2009)
Modern computer systems are designed using CMOS logic. This course introduces the design options and implementation techniques available for the design of modern CMOS digital systems. This is achieved by emphasising the top down approach to the development of a digital design.
At the end of the course students should be able to:
Know the importance of hierarchy in the design of complex digital systems (A).
Know the different levels of abstraction used to represent logic systems and be familiar with the data representation and method of simulation at each level (A).
Understand the requirements of full- and semi-custom CMOS logic design (A).
Design and layout full custom logic blocks (B).
Understand the requirements of PAL, PLA and FPGA logic architectures for logic synthesis (A).
Understand the important trade-offs between different implementation styles (A, B).
Design a FSM from an algorithmic description of a problem (B).
Design the data path for a RISC processor and synthesise the control logic (A,B,C).
Assessment of Learning outcomesLearning outcomes 3, 4 and 7 are assessed by examination and in the laboratory. Learning outcomes 1, 2, 5 and 6 are assessed by examination. Learning outcome 8 is assessed by the laboratory.
Contribution to Programme Learning OutcomesA3, B1, B2, C1, C6, D2, D4, D5
Overview, aims and objectives of the course. Walk-through of the laboratory design exercise. Top down design, design complexity, managing complexity: levels of abstraction, algorithmic specification - using a RISC processor (STUMP) as an example (2)
Stick diagrams, geometric design rules, floorplan organisation (2).
CMOS circuit design
Basic gates, complex gates, PLA's, full adder example. Transmission gates multiplexers and Universal Logic Modules. Dynamic logic (3).
Photolithography, stages of CMOS processing, yield, wafer testing, packaging (2).
Effect of scaling parameters and interconnect delays (2).
Power, speed and space compromises
Transistor sizing and the inverter delay, RC delay model - rise and fall propagation delay (2) .
SPICE simulation and real propagation delays (1).
Digital implementation choices
Design choices - off-the-shelf range, semi-custom gate array, semi-custom standard cell, full-custom, comparison of design styles. Programmable vs. full- and semi-custom implementation (1).
Digital design with programmable logic devices
The PLA and PAL, Fusible link devices, ROM based implementation, FPGA and RAM routable gate arrays (3).
Data path and sequential system design
Data path design. Control synthesis - Revision of FSM's and bubble graphs. Sequential design using the ASM chart. Example ASM charts, Mealy and Moore machines, link path extraction, looping. RISC processor example (STUMP). State assignment, minimum state locus, one-hot state encoding. State tables and forming logic. Map entered variables, linked state machines (4).
Examples Class on CMOS layout design.
Examples Class on CMOS circuit design.
2 examples classes on programmable logic and sequential design.
The examples classes are allocated to assessed coursework. Students are expected to complete (in their own time) small design exercises, similar to, but longer than, problems that are set in the exam.
Core TextTitle: CMOS VLSI design: a circuits and systems perspective (3rd edition)
Author: Weste, Neil H.E. and David Harris
Publisher: Pearson Education Limited
Core TextTitle: Digital Systems Design Using VHDL
Author: Charles H. Roth
Edition: Edition Student Manual/Study Guide