14:332:437 Digital Systems Design

Course catalog description: Hardware description, simulation, and synthesis using the Verilog language.  Design methodologies for combinational and sequential logic circuits and systems. Characteristics of microprocessors, fault-tolerant computer design, computer arithmetic, and advanced state machine theory. Digital machine organization for testing and fault-tolerance. 

Credits and contact hours: 3 credits; 1 hour and 20-minute session, twice a week, every week.

Pre-Requisite courses: 14:332:331, 351        

Co-Requisite courses: None

Topics Covered:

  • Fault Tolerance Fundamentals and Triple Modular Redundancy
  • Advanced Combinational Logic Design 
  • Verilog Language - Standard Combinational Logic 
  • Verilog Language - Concurrency and Sequential Logic 
  • Verilog Language - Tri-State Logic, Examples
  • State Machines – Timing Analysis, False Paths, Counters
  • State Machines – Synthesis to Handle Timing Delays, Asynchronous Inputs
  • Exam I, State Machine Synchronizers
  • Fault Tolerance -- Time and Information Redundancy
  • Fault Tolerance -- Parity, Arithmetic, Cyclic and Hamming Codes
  • Computer Arithmetic, Wallace Tree Multipliers and Dividers 
  • Testing, Fault Modeling and Test Generation, Hourly Exam II
  • Built-In Self-Testing, Design for Testability 
  • Packaging and Rapid Prototyping – Microprocessor Design

Textbook: P. Lala, Self-Checking and Fault-Tolerant Digital Design, Morgan Kaufmann Publishers; D. Thomas and P. Moorby, The Verilog Hardware Description Language, Springer; M. Bushnell and V. Agarwal, Essentials of Electronic Testing for Digital Memory & Mixed-Signal VLSI Circuits, Springer.