Aims and Objectives. E 3.05 Digital System Design. Course Syllabus. Course Syllabus (1) Programmable Logic



Similar documents
University of St. Thomas ENGR Digital Design 4 Credit Course Monday, Wednesday, Friday from 1:35 p.m. to 2:40 p.m. Lecture: Room OWS LL54

INTRODUCTION TO DIGITAL SYSTEMS. IMPLEMENTATION: MODULES (ICs) AND NETWORKS IMPLEMENTATION OF ALGORITHMS IN HARDWARE

A First Course in Digital Design Using VHDL and Programmable Logic

Digital Systems Design! Lecture 1 - Introduction!!

RAPID PROTOTYPING OF DIGITAL SYSTEMS Second Edition

Introduction to Programmable Logic Devices. John Coughlan RAL Technology Department Detector & Electronics Division

Quartus II Software Design Series : Foundation. Digitale Signalverarbeitung mit FPGA. Digitale Signalverarbeitung mit FPGA (DSF) Quartus II 1

EE360: Digital Design I Course Syllabus

Introduction to Digital System Design

7a. System-on-chip design and prototyping platforms

Digital Logic Design. Basics Combinational Circuits Sequential Circuits. Pu-Jen Cheng

Digitale Signalverarbeitung mit FPGA (DSF) Soft Core Prozessor NIOS II Stand Mai Jens Onno Krah

Chapter 2 Logic Gates and Introduction to Computer Architecture

Architectures and Platforms

A Second Undergraduate Course in Digital Logic Design: The Datapath+Controller-Based Approach

Embedded Systems Engineering Certificate Program

Digital Systems. Syllabus 8/18/2010 1

ELEC2141 DIGITAL CIRCUIT DESIGN

Philadelphia University Faculty of Information Technology Department of Computer Science Semester, 2007/2008.

Digital Circuit Design

Contemporary Logic Design

Contents. System Development Models and Methods. Design Abstraction and Views. Synthesis. Control/Data-Flow Models. System Synthesis Models

Rapid System Prototyping with FPGAs

Sistemas Digitais I LESI - 2º ano

System-on. on-chip Design Flow. Prof. Jouni Tomberg Tampere University of Technology Institute of Digital and Computer Systems.

Serial port interface for microcontroller embedded into integrated power meter

Active Learning in the Introduction to Digital Logic Design Laboratory Course

High-Level Synthesis for FPGA Designs

Best Practises for LabVIEW FPGA Design Flow. uk.ni.com ireland.ni.com

Hardware and Software

Verification & Design Techniques Used in a Graduate Level VHDL Course

KEEP IT SYNPLE STUPID

A Comparison of Student Learning in an Introductory Logic Circuits Course: Traditional Face-to-Face vs. Fully Online

Digital Systems. Role of the Digital Engineer

Agenda. Michele Taliercio, Il circuito Integrato, Novembre 2001

ECE 156A - Syllabus. Lecture 0 ECE 156A 1

Curriculum for a Master s Degree in ECE with focus on Mixed Signal SOC Design

Module 2. Embedded Processors and Memory. Version 2 EE IIT, Kharagpur 1

Course Requirements & Evaluation Methods

Testing & Verification of Digital Circuits ECE/CS 5745/6745. Hardware Verification using Symbolic Computation

Systems on Chip Design

Design Cycle for Microprocessors

FPGA-based MapReduce Framework for Machine Learning

Lesson 7: SYSTEM-ON. SoC) AND USE OF VLSI CIRCUIT DESIGN TECHNOLOGY. Chapter-1L07: "Embedded Systems - ", Raj Kamal, Publs.: McGraw-Hill Education

Sequential Logic. (Materials taken from: Principles of Computer Hardware by Alan Clements )

Design of Digital Circuits (SS16)

Reconfigurable Computing. Reconfigurable Architectures. Chapter 3.2

數 位 積 體 電 路 Digital Integrated Circuits

Design of a High Speed Communications Link Using Field Programmable Gate Arrays

Guru Ghasidas Vishwavidyalaya, Bilaspur (C.G.) Institute of Technology. Electronics & Communication Engineering. B.

9/14/ :38

CHAPTER 3 Boolean Algebra and Digital Logic

NIOS II Based Embedded Web Server Development for Networking Applications

CS2204 DIGITAL LOGIC & STATE MACHINE DESIGN SPRING 2016

Implementation of Web-Server Using Altera DE2-70 FPGA Development Kit

FPGA. AT6000 FPGAs. Application Note AT6000 FPGAs. 3x3 Convolver with Run-Time Reconfigurable Vector Multiplier in Atmel AT6000 FPGAs.

Computer Graphics Hardware An Overview

Computer Engineering: Incoming MS Student Orientation Requirements & Course Overview

Read-only memory Implementing logic with ROM Programmable logic devices Implementing logic with PLDs Static hazards

EE361: Digital Computer Organization Course Syllabus

Topics of Chapter 5 Sequential Machines. Memory elements. Memory element terminology. Clock terminology

Register File, Finite State Machines & Hardware Control Language

EEM870 Embedded System and Experiment Lecture 1: SoC Design Overview

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students

Example-driven Interconnect Synthesis for Heterogeneous Coarse-Grain Reconfigurable Logic

Electronic system-level development: Finding the right mix of solutions for the right mix of engineers.

International Workshop on Field Programmable Logic and Applications, FPL '99

Finite State Machine Design A Vending Machine

White Paper 40-nm FPGAs and the Defense Electronic Design Organization

Introduction to CMOS VLSI Design (E158) Lecture 8: Clocking of VLSI Systems

EE411: Introduction to VLSI Design Course Syllabus

Lab 1: Introduction to Xilinx ISE Tutorial

Attaining EDF Task Scheduling with O(1) Time Complexity

Digital Design and Synthesis INTRODUCTION

Testing of Digital System-on- Chip (SoC)

Design and Development of Virtual Instrument (VI) Modules for an Introductory Digital Logic Course

Lecture 7: Clocking of VLSI Systems

Lab 1: Full Adder 0.0

Introduction to Digital Design Using Digilent FPGA Boards Block Diagram / Verilog Examples

Pre-tested System-on-Chip Design. Accelerates PLD Development

Lecture N -1- PHYS Microcontrollers

CSE140 Homework #7 - Solution

THREE YEAR DEGREE (HONS.) COURSE BACHELOR OF COMPUTER APPLICATION (BCA) First Year Paper I Computer Fundamentals

Latch Timing Parameters. Flip-flop Timing Parameters. Typical Clock System. Clocking Overhead

Academic year: 2015/2016 Code: IES s ECTS credits: 6. Field of study: Electronics and Telecommunications Specialty: -

Figure 1 FPGA Growth and Usage Trends

Digital Electronics Detailed Outline

International Journal of Advancements in Research & Technology, Volume 2, Issue3, March ISSN

Programmable Logic Controllers Definition. Programmable Logic Controllers History

Chapter 4 Register Transfer and Microoperations. Section 4.1 Register Transfer Language

Some programming experience in a high-level structured programming language is recommended.

An Effective Deterministic BIST Scheme for Shifter/Accumulator Pairs in Datapaths

Transcription:

Aims and Objectives E 3.05 Digital System Design Peter Cheung Department of Electrical & Electronic Engineering Imperial College London URL: www.ee.ic.ac.uk/pcheung/ E-mail: p.cheung@ic.ac.uk How to go about designing complex, high speed digital systems (not just circuits)? How to use some of the modern CAD tools to help with the design? How to implement such designs using programmable logic (e.g. FPGAs)? How to read data sheets and make sense of them? How do digital building blocks (such as memory chips, processing elements, arithmetic circuits etc.) work? How to interface to processors and computers (from hardware point of view)? How to deal with testing of complex systems? Have fun! Topic 1 Slide 1 Topic 1 Slide 2 Course Syllabus Course Syllabus (1) Programmable Logic The course syllabus is divided into five main sections: Programmable Logic Arithmetic Circuits Data Encoding & communication Architectures Testing Technologies behind programmable logic Programmable Logic architectures in general Complex Programmable Logic Devices (CPLDs) Field Programmable Gate Arrays (FPGAs) Recent advances in FPGAs Designing with FPGAs Design Flow, Design Tools, Design Libraries Future of programmable logic Topic 1 Slide 3 Topic 1 Slide 4

Course Syllabus (2) Arithmetic Circuits Course Syllabus (3) Data Encoding & Communication Adders architectures Logic interface standards Multipliers circuits Clocking for high speed digital design Floating point arithmetic circuits Metastability issues Other computational building blocks Clock synchronisation Data encode and error correction On-chip and On-board communication Topic 1 Slide 5 Topic 1 Slide 6 Course Syllabus (4) Hardware Architectures Course Syllabus (5) Digital Test Parallel vs serial Modern packaging Systolic and other array architectures Board testing issues Distributed arithmetic JTAG Boundary Scan Cordic based architecture Topic 1 Slide 7 Topic 1 Slide 8

Recommended Books Coursework No perfect textbook for this course. Here are four reasonable possibilities: "Digital Design Principles and Practices", 4th Edition (Sept 2005), John F. Wakerly, Prentice Hall. This is a new edition of a well established textbook. It covers a significant portion of the materials taught on this course. At ~ 45, this a bargain. Recommended purchase if you have not already done so! Contemporary Logic Design, Gaetano Boriello, Randy H. Katz, August 2004, Prentice Hall. Good coverage on finite state machines and computer architectures. (~ 45) "High-Speed Digital Design - A handbook of black magic", Howard G. Johnson, Prentice Hall, 1993; ISBN 0-13-395724-1 ( 61). The best practical guide to designing and building very high speed digital circuits. Expensive reference for your company to buy (not you). FPGA-based System Design, Wayne Wolf, Prentice Hall, 2004, ISBN 0131424610 ( 75) Contemporary book based on FPGA; possibly too expensive for what it covers Best way to learn DSD is to do it! Unassessed coursework: 2 to 8 lab exercises using DE2 Board (from Altera) to learn the system Assessed coursework: Design of a cordic based processor to add ripple effect on an image Work in pairs one deliverable between the pair Deliverables: Working design and demonstrator Design document (effectively a no-nonsense report) Deadline: 1 st day of the Summer Term Quartus-II software has a web-edition that can be downloaded (free) from Altera website after you register Software also available on all Level 5 & Level 1 machines DE2 Boards available on Level 5 and Level 1 Labs Topic 1 Slide 9 Topic 1 Slide 10 Coursework DE2 Board Coursework Demo http://www.altera.com/education/univ/materials/boards/unv-de2-board.html This shows an example of the ripple video effect which is the goal of this coursework Topic 1 Slide 11 Topic 1 Slide 12

Levels of Design Abstractions Topic 1 Design Levels Algorithmic Design Descriptions Specifications Primitive Components Functional blocks Theoretical Techniques Signal processing theory Design Methodologies & Implementation Technologies Functional High-level lang. Math. equations VHDL, Verilog 'black boxes' Registers Control theory Sorting algorithm Automata theory FSM language Counters Timing analysis Peter Cheung Department of Electrical & Electronic Engineering Imperial College London Logic C/Pascal Boolean equations ALU Logic gates Boolean algebra Truth tables Flip-flops K-map Timing diagrams Boolean minimization URL: www.ee.imperial.ac.uk/pcheung/ E-mail: p.cheung@imperial.ac.uk Circuit Circuit equations Transistor netlist Transistors Passive comp. Linear/non-linear eq. Fourier analysis Topic 1 Slide 13 Topic 1 Slide 14 The Design Process The Design Process (cont ) Specification Functional description Design description Manufacturing Preliminary design Detail design Implementation Optimisation Verification Testing High-level (behavioural) simulation Schematic/HDL capture Logic simulation Timing analysis Simulation Logic synthesis & Optimisation Boundary-scan Built-in testing Top-down design strategies Refine Specification successively Decompose each component into small components Lowest-level primitive components Over-sold methodology - only works with plenty of experience Bottom-up design strategies Build-up from primitive components Combined to form more complex components Risk wrong interpretation of specifications Mixed strategies Mostly top-down, but also bits of bottom-up Reality: need to know both top level and bottom level constraints Topic 1 Slide 15 Topic 1 Slide 16

Design Descriptions Design Tools Schematic capture Good for multiple data flow Give overview picture Relates to hardware better Doesn't need to be good in computing High information density Back annotations possible Mixed analogue/digital possible Hardware Description Languages Flexible & parameterisable Excellent for optimisation & synthesis Direct mapping to algorithms Excellent for datapaths Readily interfaced to optimiser Easy to handle and transmit (electronically) Not good for algorithms Not good for datapaths Doesn't interface well in optimiser No good for synthesis software Difficult to reuse Not parameterisable Essentially serial representation May not show overall picture Often need good programming skill Divorce from physical hardware Need special software Topic 1 Slide 17 Topic 1 Slide 18 A typical digital system Implementation Technologies Digital Logic Microprocessor RAM/ROM Buffer memories Standard Logic Progammable Logic Devices ASICs Full Custom Bus interface circuits Complex ASIC Glue Logic SPLDs CPLDs FPGAs Microprocessor & RAM TTL 74xx CMOS 4xxx Gate Arrays Standard Cells Topic 1 Slide 19 Topic 1 Slide 20