49
MICROPROCESSOR SYSTEM DESIGN COURSE INTRODUCTION 1 Muhammad Amir Yousaf

MICROPROCESSOR SYSTEM DESIGN COURSE INTRODUCTION 1Muhammad Amir Yousaf

Embed Size (px)

Citation preview

1Muhammad Amir Yousaf

MICROPROCESSOR SYSTEM DESIGN

COURSEINTRODUCTION

2Muhammad Amir Yousaf

Introduction

Micro-controllersHistory of Computer

Course Aims?

Course contents?

Invisible computing

MICROPROCESSOR SYSTEM DESIGN ET011G

3Muhammad Amir Yousaf

HUMAN’S CALCULATIONS AND COMPUTATIONS

History

Humans needed to count, calculate and compute since the beginning.

They needed to count times, distances, money (sheep, cattle )etc.

With development of human society, they had to do advanced calculations to make tide charts, navigational tables and planetary positions for astronomical almanacs.

4Muhammad Amir Yousaf

HUMAN’S CALCULATIONS AND COMPUTATIONS

History

With the growing need, dedicated people were hired to make repetitive or/and complex calculations.

Later on they started computing to precisely hit their enemies with trebuchets, cannons and bomber jets.

5Muhammad Amir Yousaf

HUMAN COMPUTERS

History

‘Human computers’ performing repetitive computing to compute navigational tables, tide charts, and planetary positions for astronomical almanacs.

The term "computer“ was used in the mid 17th century.

The approach was used for astronomical and other complex calculations.

Human computers have played integral roles in the World War II

6Muhammad Amir Yousaf

EARLY COMPUTATION DEVICES

History

Abacus: The abacus was an early aid for mathematical computations.

An Abacus expert can do addition and subtraction at same speed as with calculator.

7Muhammad Amir Yousaf

EARLY COMPUTATION DEVICES

History

The period 2700-2300 BC saw the first appearance in  Sumerian civilisation

Greek historian mentioned the use of Abacus in ancient Egypt

 Achaemenid Persian Empire, around 600 BC

8Muhammad Amir Yousaf

EARLY COMPUTATION DEVICES

History

In 1632 a slide rule was build using the Napier’s Log table. It was still in use until 1960 by NASA engineers of Apollo program.

John Napier invented Logarithms in 1617 that allows multiplication to be performed via additions

9Muhammad Amir Yousaf

MECHANICAL COMPUTERS

History

Blaise Pascal (19) invented Pascaline in 1642 for his tax collector father. Still the mechanical odometers use the Pascaline’s mechanism to increment the next wheel after each revolution of prior wheel.

Step Reckoner by Wilhelm Leibniz : It was the first calculator that could perform all four arithmetic operations: addition, subtraction, multiplication and division.

 Leibniz was the first to advocate use of the binary number system

10Muhammad Amir Yousaf

PUNCH CARD COMPUTERS1801, Joseph Marie Jacquard introduced wooden punch cards to feed pattern to power looms that could weave fabric and print design on it.

This punched card idea was later used in many mechanical computers for programming .

The presence or absence of holes in predefined positions would physically allows a thread to pass or stops that thread.

History

11Muhammad Amir Yousaf

PUNCH CARD COMPUTERS

History

Jacquard's Loom showing the threads and the punched cards

12Muhammad Amir Yousaf

History

13Muhammad Amir Yousaf

MECHANICAL COMPUTERS

History

Charles Babbage embarked on an ambitious venture to design and build mechanical calculating engines.

'I wish to God these calculations had been executed by steam'

Middle decades of 19th century…..times of unprecedented engineering ambitions.

Steam engines had started powering up.

14Muhammad Amir Yousaf

MECHANICAL COMPUTERS

History

Babbage came with another idea Analytic Machine power by 6 steam engines.

It was programmable with punch cards used to feed instructions and also to store data.

Difference Engine was the first idea that would compute logarithm tables but never completed .

15Muhammad Amir Yousaf

MECHANICAL COMPUTERS

History

Herman Hollerith invented a counting machine called Hollerith desk for 1890 US census. The machine was build using the Jacquard’s punched cards and Pascal's gear wheel technologies.

Hollerith build a company, the Tabulating Machine Company which eventually became the International Business Machines (IBM)

16Muhammad Amir Yousaf

ELECTRO-MECHANICAL COMPUTERS

History

U.S. had battleships that could lob shells weighing as much as a small car over distances up to 25 miles.

WW-II, Precise calculation for shell trajectory was required

Physicists could write the equations that described how atmospheric drag, wind, gravity, muzzle velocity, etc. would determine the trajectory of the shell.  But solving such equations was extremely laborious.

17Muhammad Amir Yousaf

ELECTRO-MECHANICAL COMPUTERS

History

Mark I was first programmable digital computer made by a partnership b/w Harvard and IBM in 1944 to perform military job.

It was not purely electronic but was constructed out of relays, rotating shafts and clutches.

The machine weighed 5 tons, incorporated 500 miles of wire, was 8 feet tall and 51 feet long, and had a 50 ft rotating shaft running its length, turned by a 5 horsepower electric motor. 

18Muhammad Amir Yousaf

ELECTRO-MECHANICAL COMPUTERS

History

19Muhammad Amir Yousaf

FIRST COMPUTER BUG FOUND

History

Grace Hopper found the first computer "bug": a dead moth that had gotten into the Mark I and whose wings were blocking the reading of the holes in the paper tape. The word "bug" had been used to describe a defect since at least 1889 but Hopper is credited with coining the word "debugging" to describe the work to eliminate program faults.

In 1953 Grace Hopper invented the first high-level language, "Flow-matic“ which eventually became COBOL

She also constructed the world's first compiler.

20

History

Muhammad Amir Yousaf

The Mark I operated on numbers that were 23 digits wide.

Add or subtract two of these numbers in three-tenths of a second.

Multiply them in four seconds.

Divide them in ten seconds.

Store 72 numbers.

“Six electronic digital computers would be sufficient to satisfy the computing needs of the entire United States.” Howard Aiken

21Muhammad Amir Yousaf

ELECTRONIC COMPUTERS

History

Then the microelectronic revolution allowed the things to change in the way we have today.

Apple I came as a home computer in 1976.

Designed and hand-built by Steve Jobs and Steve Wozniak, the Apple I was Apple's first product, and went on sale in July 1976.

It was the first commercially successful home computer to feature both a mouse-based input system, as well as an easy-to-use graphical user interface.

22Muhammad Amir Yousaf

COMPUTER IN ELECTRONIC AGE

History

History of electronic computer development is divided into 5 generations.

1st Generation: Vacuum Tube Computers 2nd Generation: Transistor Computers 3rd Generation: Integrated IC 4th Generation: VLSI (processors)

Major changes occur in the areas:

Size, Cost, Efficiency, Reliability

23

1ST GENERATION: VACUUM TUBES

History

1906 Lee de Forest invents the vacuum tube that could amplify and switch voltage level.

1945, ENIAC, Electronic Numerical Integrator and Calculator was the first vacuum tube computer designed by Eckert and Mauchly.

Programmable with punched cards and tape Much faster than Mark I as there was no

mechanical moving part. Mark I takes 6 seconds for multiplications

whereas it takes only 2.8 thousandth of a second.

Muhammad Amir Yousaf

ENIAC filled a 20 by 40 foot room, weighed 30 tons, and used more than 18,000 vacuum tubes.

24

1ST GENERATION: VACUUM TUBES

History

Muhammad Amir Yousaf

To reprogram the ENIAC you had to rearrange the patch cords that you can observe on the left in the prior photo, and the settings of 3000 switches that you can observe on the right

174,000 watts of heat produced by 19000 vacuum tubes.

25Muhammad Amir Yousaf

1ST GENERATION: VACUUM TUBES1940S-1956

History

1951, The two guys of ENIAC teamed up with John Von Neumann to eliminate the obnoxious fact that reprogramming the computer required a physical modification of all the patch cords and switches. It took days to change ENIAC's program. 

Neumann was first to give stored program computer architecture that is still in use in most modern computers with some modifications.

26Muhammad Amir Yousaf

1ST GENERATION: VACUUM TUBES1940S-1956

History

Vacuum Tube technology was:

Much faster than mechanical computers

Expensive Bulky Power Hungry Un-reliable Punched cards, paper tape,

magnetic drum memories.

2ND GENERATION: TRANSISTORS 1956-1963

History

Transistors allowed 2nd generation computers to be:

Smaller in size. Faster in speed. Reliable Energy efficient.

27Muhammad Amir Yousaf

1947, Transistors invented in Bell Labs. Transistors replaced vacuum tubes in 2nd generation computers.

Magnetic core technology was used for memory. Instructions were stored in memory.

Computers moved to assembly language and high level languages e.g. FORTRAN and COBOL were used for instructions.

3RD GENERATION: INTEGRATED CIRCUITS 1964- 1971

History

Integrated circuit technology was developed that allowed integration of several transistors on a silicon chip.

It drastically increased the speed and efficiency of 3rd generation computers while reducing the size. The change was ‘revolutionary’.

The use of operating system allowed several applications running on same time.

The reduction in size and cost due to IC technology had made it accessible to mass users.

28Muhammad Amir Yousaf

Altair 1975

29Muhammad Amir Yousaf

4TH GENERATION: VLSI1971 TO PRESENT

History

Very Large Scale Integration (VLSI), thousands of ICs on same chip made it possible to develop entire processor on single chip.

Intel 4004 processor chip, 1971 CPU, memory to I/O control on same chip. 4-bits

IBM introduced home computer, 1981 Apple introduced the Macintosh, 1984 Personal computers Desktops, laptops, Netbooks, Pads and tablets

30Muhammad Amir Yousaf

COMPUTERS PAST PRESENT FUTURE

History

Difficult to maintain.

Expensive

Require specialized cooling infrastructure.

Only in Research labs

Multi to one relations

Up to 1970s

Computers up to 1970s were very large objects, called mainframes.

31Muhammad Amir Yousaf

COMPUTERS PAST PRESENT FUTURE

History

After 1971

Intel’s 4004 (1971), mainframe built on to a chip.

Computing became cheaper, robust, portable.

Personal computers, Every one started having one’s own.

‘Many to one’ relation changes to ‘One to One’

32Muhammad Amir Yousaf

COMPUTERS PAST PRESENT FUTURE

History

Where it would lead to in future

Computing would be distributed in physical space.

Invisible but everywhere around us, Mark Weiser (1990)

In woodworks around us even in the clothing.

Embedded, wireless, invisible

Interfaces.? Gestural, voice

33Muhammad Amir Yousaf

Invisible but everywhere around us

Future

Computing away from mainframe and desktop computers.

In the smaller computing engines ubiquitously spread in physical space.

Microcontrollers…….Smaller computing engines

34Muhammad Amir Yousaf

Invisible but everywhere around us

Future

New areas computers getting in

Paper 4, Touch sensitive printed surface with printed speakers

http://mkv.itm.miun.se/projekt/paperfour/

MICROPROCESSOR SYSTEM DESIGN?

Motivation

35Muhammad Amir Yousaf

MICROPROCESSOR SYSTEM DESIGN?

Motivation

To be a system designer and analyst:

Knowledge of programming languages for efficient software design.

General knowledge of modern technologies.

Sensing Computing Communicating

36Muhammad Amir Yousaf

37Muhammad Amir Yousaf

MICROPROCESSOR SYSTEM DESIGNET032G

Labs & Lectures:

Muhammad Amir YousafS- Building 241-F060148748http://apachepersonal.miun.se/~amiyou/

Email: [email protected]

38Muhammad Amir Yousaf

COURSE AIM

Aims:

The course aims to provide a basic understanding of how microcomputers are constructed and how they are used.

A solid Foundation:

In-depth knowledge of computer architecture.

For design, debug and testing.

39Muhammad Amir Yousaf

COURSE AIM

Student will learn to design an electronic system into a modern microprocessor and get the skills to program a modern microprocessor.

Microcomputer interaction with external devices

General knowledge of modern technologies.

40Muhammad Amir Yousaf

LEARNING OBJECTIVESAfter successful completion of the course students should  learn

Basic microcomputer architecture: how a micro-computer is built and functioning .how to design a simple electronic systems on a microcomputer 

Programming in C 

how to handle a development environment for a microcomputer how to write simpler program and functions in a microcomputer using C. be able to write and include inline assembler of short code fragments 

I/O handling, synchronization to read information from the outside world, process it and then influence its surrounding. to handle both analog and digital signals to / from micro-computer. use interrupt and polling to synchronize program execution to the outside world. link microcomputer with other devices through standard interface such as SPI, I2C, UART and USB.

41Muhammad Amir Yousaf

COURSE CONTENTSThe course is divided into three parts with the following content 

Basic microcomputer architecture Von Neumann architectures Assembly programming Overview of state-of-the-art architectures 

Programming in C Structured Programming in C  Inline assembler

I/O management Read/write data from/to outside world A/D - D/A converters Memory architectures Synchronization via interrupt and polling Interface to the SPI (e.g. memory cards), I2C, UART, USB communication

42Muhammad Amir Yousaf

LECTURE PLANIntroduction to Course:

Computer History Course Plan, Aims and Goals Course Contents.

Lecture 1: Von Neumann Architecture Von Neumann Architecture Harvard Architecture Addressing Modes Data Representation.

Lecture2: Microprocessor Programming Problem definition Program design goals Program development Embedded C

43Muhammad Amir Yousaf

LECTURE PLANLecture 3: Microprocessor Programming II

Embedded C Pointers, Array, Structures Memory Management

Lecture4: Architecture of X-mega micro-controller

Lecture5: IO Handling Communication with external world Communication models Overview of serial and parallel protocols

44Muhammad Amir Yousaf

LECTURE PLANLecture6: IO Handling II

SPI I2C USART

Lecture 7: Inline Assembly Why Assembly? Basic Instructions. Mixing Assembly and C

Lecture8: Memory Registers Memory Type Memory configurations

45Muhammad Amir Yousaf

LABS AND EXERCISES

Microcontroller Educational Platform:

Atmel ATxmega128B1 microcontroller 4x40 LCD module with backlight Transfer data over the USB full/low speed device interface Read a light sensor with the ADC Read a temperature sensor with the ADC Measure external voltage input with ADC Measure potentiometer voltage with ADC Read status of the 4 Atmel QTouch® buttons from AT42QT1040

QTouch device 4 LEDs to show status information Read/write data to the 64Mbit Atmel DataFlash Program the kit via USB bootloader or an Atmel programmer Expand the board with Xplained top modules

46Muhammad Amir Yousaf

LABS AND EXERCISESProgramming Environment:AVR Studio 6Labs

Lab1: Literature reading i.e. Datasheets and getting started

tutorials Getting started with AVR Studio 6 AVR simulator to visualize the data flow within registers

to get deeper idea of architecture Digital IOs, LEDs and Switches

Lab2: IO Handling

47Muhammad Amir Yousaf

LABS AND EXERCISESProgramming Environment:AVR Studio 6Labs

Lab3: Inline assembly Interrupts More robust applications

48Muhammad Amir Yousaf

EXAMINATION AND GRADING SYSTEM

A written exam will be held 15th Jan 2014

Examination form3.0 credits, T106: Exam Grades: A, B, C, D, E, Fx and F. A-E are passed and Fx and F are failed. 

3.0 credits, L106: Laboratory Grades: Pass (P) or Fail (F) 

1.5 credits, I106: Assignment, Project Grades: Pass (P) or Fail (F) 

49Muhammad Amir Yousaf