Course Syllabus ECE 420 – Design with Programmable Logic Department of Electrical & Computer Engineering 1. Course Number and Name: 2. Credit Units/Contact Hours: 3. Course Coordinator: ECE 420 – Design with Programmable Logic 3/3 George Law 4. Text, References & Software Recommended Text: RTL Hardware Design Using VHDL by Pong Chu, Wiley, 2006 Additional References: Douglas Perry, VHDL, McGraw-Hill Inc., 2001 VHDL for Programmable Logic by Kevin Skahill, Addison Wesley, 1996 Rapid Prototyping of Digital Systems by Hamblen, Hall, & Furman, Quartus 2 ed. Software: Quartus, Altera Corporation Modelsim, Mentor Graphics Corp. Internet Resources: Data sheets, Quartus Software suite http://www.altera.com/ 16V8 http://www.latticesemi.us/lit/docs/datasheets/pal_gal/16v8.pdf Max 5000 http://www.cypress.com/ ( Search CY7C344 under Max340 EPLD ) Max7000 http://www.altera.com/literature/lit-index.html Flex 10K Cyclone II http://www.altera.com/education/univ/unv-index.html Quartus Web Edition: http://www.altera.com/education/univ/software/unv-software.html 5. Specific Course Information a. Course Description Designed to cover and compare a variety of programmable logic devices with design examples to show their applications. It emphasizes the implementation of digital systems with programmable logic devices and it uses VHDL in design description and Maxplus II software in design simulation and verification. b. Prerequisite by Topic Students must be familiar with conventional techniques in designing digital logic circuit using discrete logic. Specifically, they must be familiar with conversion of numbers among various number systems, TTL input/output voltage and current specification, logic function minimization, timing analysis, and functions of standard MSI combinational and sequential circuits such as decoder, multiplexer, encoder, comparator, adder, subtractor, flip-flops, shift registers, and counters. c. Elective Course (EE), Required Course (CompE) 6. Specific Goals for the Course a. Specific Outcomes of Instructions – After completing this course the students should be able to: 1. Understand the architectures of PLDs, CPLDs, and FPGA (16V8, Max5000, Max7000, Flex10K, Cyclone II) 2. Design combinational and sequential digital circuits using PLDs, CPLDs, and FPGAs. 3. Use Quartus software to enter the digital design using schematic design entry method and VHDL design entry method. 4. Verify the design using Functional simulation or Timing simulation graphically and with test benches using Quartus or Modelsim. 5. Construct and verify the functionality of a hardware prototype. b. Relationship to Student Outcomes This supports the achievement of the following student outcomes: a. An ability to apply knowledge of math, science, and engineering to the analysis of electrical and computer engineering problems. c. An ability to design systems which include hardware and/or software components within realistic constraints such as cost, manufacturability, safety and environmental concerns. e. An ability to identify, formulate, and solve electrical and computer engineering problems. i. A recognition of the need for and an ability to engage in life-long learning. k. An ability to use modern engineering techniques for analysis and design. 7. Topics Covered/Course Outline 1. Custom Design Versus semi-custom design 2. Design Methodology 3. Design Software Support: Quartus 4. VHSIC Hardware Description Language (VHDL) 5. Design Simulation with Test Benches 6. Combinational Logic Circuit Design 7. Synchronous Sequential Circuit Design 8. Programmable Logic Devices 16V8, Max5000, Max7000, Flex10K, Cyclone II 9. Design Examples Prerequisite by Topic Prepared by: George Law, Professor of Electrical and Computer Engineering, November 2011 Ali Amini, Professor of Electrical and Computer Engineering, March 2013