Introduction to Computer Engineering. CS/ECE 252, Spring 2013 Prof. Mark D. Hill Computer Sciences Department University of Wisconsin Madison

Similar documents
7/22/14. Lecture Notes. Chapter 1 Welcome Aboard. Introduction to Computing Systems: From Bits and Gates to C and Beyond 2 nd Edition

Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Computing Layers

Copyright 2003 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J.

Chapter 3 Digital Logic Structures

Computability. What can be computed?

Chapter 3 Digital Logic Structures

Course Content. Course Content. Course Format. Low Power VLSI System Design Lecture 1: Introduction. Course focus

Computer Arithmetic (2)

Introduction (concepts and definitions)

Chapter 1 An Introduction to Computer Science. INVITATION TO Computer Science 1

(Theory-Practice-Lab) Credit BBM 1511 Introduction to Computer Engineering - 1 (2-0-0) 2

A Static Power Model for Architects

DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI

Technical framework of Operating System using Turing Machines

Adder (electronics) - Wikipedia, the free encyclopedia

Lesson 7. Digital Signal Processors

Course Outline. Textbook: G. Michael Schneider and Judith L. Gersting, "Invitation to Computer Science C++ Version," 3rd Edition, Thomson, 2004.

EECS 427 Lecture 21: Design for Test (DFT) Reminders

Lecture 1. Tinoosh Mohsenin

Digital Integrated CircuitDesign

of the hypothesis, but it would not lead to a proof. P 1

Overview. 1 Trends in Microprocessor Architecture. Computer architecture. Computer architecture

CITS2211 Discrete Structures Turing Machines

Reflector A Dynamic Manifestation of Turing Machines with Time and Space Complexity Analysis

Option 1: A programmable Digital (FIR) Filter

Run-time Power Control Scheme Using Software Feedback Loop for Low-Power Real-time Applications

EC 1354-Principles of VLSI Design

Low Power Design Part I Introduction and VHDL design. Ricardo Santos LSCAD/FACOM/UFMS

Chapter 3. H/w s/w interface. hardware software Vijaykumar ECE495K Lecture Notes: Chapter 3 1

Lecture #1. Course Overview

By the end of this chapter, you should: Understand what is meant by engineering design. Understand the phases of the engineering design process.

JDT LOW POWER FIR FILTER ARCHITECTURE USING ACCUMULATOR BASED RADIX-2 MULTIPLIER

1. The decimal number 62 is represented in hexadecimal (base 16) and binary (base 2) respectively as

Midterm Examination. CSCI 561: Artificial Intelligence

EE241 - Spring 2013 Advanced Digital Integrated Circuits. Announcements. Lecture 16: Power and Performance

COMPUTER ORGANIZATION & ARCHITECTURE DIGITAL LOGIC CSCD211- DEPARTMENT OF COMPUTER SCIENCE, UNIVERSITY OF GHANA

Application Note #5 Direct Digital Synthesis Impact on Function Generator Design

Exploiting Coarse-Grained Task, Data, and Pipeline Parallelism in Stream Programs

SYNTHESIS OF CYCLIC ENCODER AND DECODER FOR HIGH SPEED NETWORKS

Fundamentals of Microelectronics

What this paper is about:

A New network multiplier using modified high order encoder and optimized hybrid adder in CMOS technology

Parallel Computing 2020: Preparing for the Post-Moore Era. Marc Snir

Formal Hardware Verification: Theory Meets Practice

Chapter 3 Digital Logic Structures

DIGITAL DESIGN WITH SM CHARTS

CS/ECE 252: INTRODUCTION TO COMPUTER ENGINEERING UNIVERSITY OF WISCONSIN MADISON

IMPLEMENTATION OF DIGITAL FILTER ON FPGA FOR ECG SIGNAL PROCESSING

Data Acquisition & Computer Control

CS302 - Digital Logic Design Glossary By

IMPLEMENTATION OF UNSIGNED MULTIPLIER USING MODIFIED CSLA


EECS150 - Digital Design Lecture 28 Course Wrap Up. Recap 1

Low-Power CMOS VLSI Design

Welcome to 6.111! Introductory Digital Systems Laboratory

Electrical Engineering 40 Introduction to Microelectronic Circuits

An Optimized Design for Parallel MAC based on Radix-4 MBA

Design of FIR Filter Using Modified Montgomery Multiplier with Pipelining Technique

CDT314 FABER Formal Languages, Automata and Models of Computation MARK BURGIN INDUCTIVE TURING MACHINES

Introduction to Digital Logic Missouri S&T University CPE 2210 Adders

LOGIC GATES AND LOGIC CIRCUITS A logic gate is an elementary building block of a Digital Circuit. Most logic gates have two inputs and one output.

DESIGN OF BINARY MULTIPLIER USING ADDERS

EC4205 Microprocessor and Microcontroller

Chapter 3 Describing Logic Circuits Dr. Xu

Design of a Power Optimal Reversible FIR Filter for Speech Signal Processing

Digital Systems Laboratory

High-Speed RSA Crypto-Processor with Radix-4 4 Modular Multiplication and Chinese Remainder Theorem

Design of Adjustable Reconfigurable Wireless Single Core

Propagation Delay, Circuit Timing & Adder Design. ECE 152A Winter 2012

Propagation Delay, Circuit Timing & Adder Design

Evolutionary Electronics

Kenneth R. Laker, University of Pennsylvania, updated 20Jan15

Design and Analysis of Row Bypass Multiplier using various logic Full Adders

Lecture 3: Logic circuit. Combinational circuit and sequential circuit

An Efficent Real Time Analysis of Carry Select Adder

A New RNS 4-moduli Set for the Implementation of FIR Filters. Gayathri Chalivendra

COURSE LEARNING OUTCOMES AND OBJECTIVES

(CSC-3501) Lecture 6 (31 Jan 2008) Seung-Jong Park (Jay) CSC S.J. Park. Announcement

On Built-In Self-Test for Adders

Very Large Scale Integration (VLSI)

EECS 470. Lecture 9. MIPS R10000 Case Study. Fall 2018 Jon Beaumont

A Comparison of Two Computational Technologies for Digital Pulse Compression

Fault Tolerance in VLSI Systems

Class Project: Low power Design of Electronic Circuits (ELEC 6970) 1

Membrane Computing as Multi Turing Machines

By Dayadi Lakshmaiah, Dr. M. V. Subramanyam & Dr. K. Satya Prasad Jawaharlal Nehru Technological University, India

Systems with Digital Integrated Circuits

What is a Simulation? Simulation & Modeling. Why Do Simulations? Emulators versus Simulators. Why Do Simulations? Why Do Simulations?

Embedded Systems. 9. Power and Energy. Lothar Thiele. Computer Engineering and Networks Laboratory

MOS CURRENT MODE LOGIC BASED PRIORITY ENCODERS

A High Speed Low Power Adder in Multi Output Domino Logic

An Optimized Wallace Tree Multiplier using Parallel Prefix Han-Carlson Adder for DSP Processors

Implementation of Parallel Multiplier-Accumulator using Radix- 2 Modified Booth Algorithm and SPST

Chapter 11. Digital Integrated Circuit Design II. $Date: 2016/04/21 01:22:37 $ ECE 426/526, Chapter 11.

Control Systems Overview REV II

Oracle Turing Machine. Kaixiang Wang

Design for Testability & Design for Debug

Power-Area trade-off for Different CMOS Design Technologies

International Journal of Advance Engineering and Research Development

A study to Design and comparison of Full Adder using Various Techniques

Transcription:

Introduction to Computer Engineering CS/ECE 252, Spring 2013 Prof. Mark D. Hill Computer Sciences Department University of Wisconsin Madison

Chapter 1 Welcome Aboard Slides based on set prepared by Gregory T. Byrd, North Carolina State University

Computer System: Layers of Abstraction Application Program Algorithms Software Hardware Language Instruction Set Architecture (and I/O Interfaces) Microarchitecture Circuits Devices 1-3

Big Idea #1: Universal Computing Device All computers, given enough time and memory, are capable of computing exactly the same things. = = PDA Workstation Supercomputer 1-4

Turing Machine Mathematical model of a device that can perform any computation Alan Turing (1937) ability to read/write symbols on an infinite tape state transitions, based on current state and symbol Every computation can be performed by some Turing machine. (Turing s thesis) a,b T add a+b a,b T mul ab Turing machine that adds Turing machine that multiplies 1-5

Universal Turing Machine Turing described a Turing machine that could implement all other Turing machines. inputs: data, plus a description of computation (Turing machine) T add, T mul a,b,c U c(a+b) Universal Turing Machine U is programmable so is a computer! instructions are part of the input data a computer can emulate a Universal Turing Machine, and vice versa Therefore, a computer is a universal computing device! 1-6

From Theory to Practice In theory, computer can compute anything that s possible to compute given enough memory and time In practice, solving problems involves computing under constraints. time cost weather forecast, next frame of animation,... cell phone, automotive engine controller,... power cell phone, handheld video game,... 1-7

Big Idea #2: Transformations Between Layers How do we solve a problem using a computer? A systematic sequence of transformations between layers of abstraction. Problem Algorithm Program Instr Set Architecture Software Design: choose algorithms and data structures Programming: use language to express design Compiling/Interpreting: convert language to machine instructions 1-8

Deeper and Deeper Instr Set Architecture Microarch Circuits Devices Processor Design: choose structures to implement ISA Logic/Circuit Design: gates and low-level circuits to implement components Process Engineering & Fabrication: develop and manufacture lowest-level components 1-9

Descriptions of Each Level Problem Statement stated using "natural language" may be ambiguous, imprecise Algorithm step-by-step procedure, guaranteed to finish definiteness, effective computability, finiteness Program express the algorithm using a computer language high-level language, low-level language Instruction Set Architecture (ISA) specifies the set of instructions the computer can perform data types, addressing mode 1-10

Descriptions of Each Level (cont.) Microarchitecture detailed organization of a processor implementation different implementations of a single ISA Logic Circuits combine basic operations to realize microarchitecture many different ways to implement a single function (e.g., addition) Devices properties of materials, manufacturability 1-11

Many Choices at Each Level Solve a system of equations Red-black SOR Gaussian elimination Jacobi iteration Multigrid FORTRAN C C++ Java Sun SPARC Intel x86 Compaq Alpha Pentium II Pentium III AMD Athlon Tradeoffs: cost performance power (etc.) Ripple-carry adder Carry-lookahead adder CMOS Bipolar GaAs 1-12

What s Next Bits and Bytes How do we represent information using electrical signals? Digital Logic How do we build circuits to process information? Processor and Instruction Set How do we build a processor out of logic elements? What operations (instructions) will we implement? Assembly Language Programming How do we use processor instructions to implement algorithms? How do we write modular, reusable code? (subroutines) I/O, Traps, and Interrupts How does processor communicate with outside world? 1-13