Sie sind auf Seite 1von 52

Hardware Architecture

& Programming
Concepts
(BCE05103)
Unit 1
Introduction to Hardware Architecture and Programming Concepts

AIM:

To equip students with the hardware architecture and the basic concepts of
programming.

2
Introduction to Hardware Architecture and Programming Concepts

Objectives:

The Objectives of this module are:

• Explain the key concepts of PC.


• Explain the evolution of microprocessor.
• Describe the structure of microprocessor.
• Outline the operation of a microcontrollers.
• Explain about SIC , assembler.

3
Introduction to Hardware Architecture and Programming Concepts

Outcome:

At the end of this module, you are expected to:

• Define microprocessor.
• Classify the structure of microprocessor.
• Use different microprocessor based on its application.
• Differentiate the different system software's.

4
Introduction to Hardware Architecture and Programming Concepts

Contents
1. PC Components.
2. Microprocessor – history of microprocessors, transistor, IC, evolution of microprocessors.
3. Microcontrollers – history .
4. System software and machine architecture, simplified instructional computer (SIC).
5. Assembler, loader, linker, macro processor, compilers.

5
PC Components

6
PC Components

• A computer system is made up of a combination of hardware and software.


• Hardware: All of the electronic and mechanical equipment in a computer is called the
hardware. Examples include:
• Motherboard
• Hard disk
• RAM
• Power supply
• Processor
• Case
• Monitor
• Keyboard
Mouse
7
Course Introduction

This subject elaborates about the pc


components.
PC Components

PC Components
A computer system is a collection of electronic and mechanical devices operating as a
unit. These devices can be sorted according to the role they play in the computer system.
The main device categories are:
• Input devices These devices are used to get data into the computer system
• Processing devices These manipulate the data using to a set of instructions
called a program
• Output devices These are used to get data out of a computer system
• Storage devices The can store the data for use at a later stage
• Communications devices These can send the data to another computer system

9
PC Components

10
PC Components

• 1 System Unit The container for the motherboard, disk drives etc.
• 2 Monitor The main output device for the system.
• 3 Keyboard The main input device for the system
• 4 Mouse An input device allowing interaction with the system using pointing and clicking
• 5 Speakers Used to output sounds and music from the system

11
PC Components

The term software is used to describe computer programs that perform a task or tasks on a
computer system. Software can be grouped .

12
Microprocessor – history of microprocessors,
transistor, IC, evolution of microprocessors

13
14
15
16
17
18
Microprocessor

A microprocessor is an electronic component


that is used by a computer to do its work.

It is used as a central processing unit on a single


integrated circuit chip containing millions of
very small components including transistors,
resistors, and diodes that work together.

Microprocessors help to do everything


from writing to searching the Web.
Everything a computer does is described
by lots of precise instructions, and
microprocessors carry out these instructions
at incredible speed—many millions of times a second.

Program controlled semiconductor device(IC)


which fetches (from memory),decodes and executes instructions.
19
It is used as CPU (central processing unit) in computers.
History of Microprocessor

20
History of Microprocessor

21
Transistor

• A transistor is a semiconductor device used to amplify or switch electronic signals and


electrical power. It is composed of semiconductor material usually with at least three
terminals for connection to an external circuit.

22
History of Microprocessor

23
History of Microprocessor

24
IC

An integrated circuit or monolithic integrated circuit (also referred to as an IC, a chip, or a


microchip) is a set of electronic circuits on one small flat piece (or "chip") of semiconductor
material, normally silicon.

25
IC

26
Types of IC
• Like electronic circuit, ICs can also be categorized as digital IC and analog
IC based on their applications.
• Analog IC
In this type of ICs, the input and output both signals are continuous. The
output signal level depends upon the input signal level and the output signal
level is a linear function of input signal level. Linear ICs or analog ICs are
most commonly used as audio frequency amplifier and radio frequency
amplifier.
Op amps, voltage regulators, comparators and timers are also well-known
examples of linear ICs or analog ICs.

27
Types of IC’s
• Digital IC
• The logic Gates, such as AND gate, OR gate, NAND gate, XOR gate, flip
flops, counters; microprocessors are some well-known examples of digital
ICs. These ICs operate with binary data such as either 0 or 1. Normally in
digital circuit, 0 indicates 0 V and one indicate +5 V. The main components
of an IC are transistors. These transistors may be bipolar or field effect
depending upon the applications of ICs. As the technology is improving
day by day, the number of transistors incorporated in a single IC chip is
also increasing. Depending upon the number of transistors incorporated in
a single chip, the ICs are categorized in five groups

28
• Small Scale Integration (SSI) where the number of transistors incorporated
in a single IC chip is up to 100.
• Medium Scale Integration (MSI) where the number of transistors
incorporated in a single IC chip is from 100 to 1000.
• Large Scale Integration (LSI) where the number of transistors incorporated in
a single IC chip is from 1000 to 20,000.
• Very Large Scale Integration (VLSI) where the number of transistors
incorporated in a single IC chip is from 20,000 to 10,00,000.
• Ultra Large Scale Integration (ULSI) where the number of transistors
incorporated in a single IC chip is from 10,00,000 to 1,00,00,000.

29
Evolution of Microprocessor

30
Microcontrollers – history

31
Microcontroller

A microcontroller (MCU for microcontroller unit, or UC for μ-controller) is a


small computer on a single integrated circuit.
In modern terminology, it is similar to, but less sophisticated than, a system on a chip or SoC;
an SoC may include a microcontroller as one of its components.
A microcontroller contains one or more CPUs (processor cores) along with memory and
programmable input/output peripherals
Program memory in the form of ferroelectric RAM, NOR
flash or OTP ROM is also often included on chip, as well
as a small amount of RAM.
Microcontrollers are designed for embedded applications,
in contrast to the microprocessors used in personal computers
or other general purpose applications consisting of various
discrete chips.
32
Microcontroller history

• It was during 1970 and 1971 when Intel was


working on inventing the world’s first
microprocessor, that Gary Boone of Texas
Instruments was working on quite a similar
concept and invented the microcontroller.

• Boone designed a single integrated circuit


chip that could hold nearly all the essential
circuits to form a calculator; only the display
and the keypad were not incorporated.

33
Microcontroller history

• Intel Microcontrollers
• Intel also created many significant microcontrollers besides producing the world’s first ever
microprocessor.
• The important ones produced by Intel are the 8048 and the 8051 microcontrollers.
• 8048 was introduced in 1976 and was the first of Intel’s microcontrollers. It was used as the
processor in the PC keyboard of IBM.
• The 8051 microcontroller was introduced in 1980 and is one of the most popular
microcontrollers. It is even used now and is considered to be one of the most long-lived
microcontrollers

34
Microcontroller history

• The revolutionary electrically erasable memories


• It was during the 1990s that advanced microcontrollers with electrically erasable and
programmable ROM memories such as the flash memory started flooding the electronics
market.
• The unique feature of these microcontrollers is that they can be programmed, erased and
reprogrammed with the help of just electrical signals.
• A lot of currently used microcontrollers such as the ones available from Atmel and
Microchip use the flash memory technology.

35
Microcontroller history

• The latest microcontrollers


• Today, in addition to the general purpose gadgets, unique microcontrollers are being created
for areas like lighting, automotive, communications, and low-power driven consumer goods.
• The present day microcontrollers like AVR, and PIC have become smaller and sleeker yet
more and more powerful.
• For instance, there are so tiny microcontrollers available, small and cheap enough to be used
in simple products like toothbrushes and toys.

36
Microcontrollers – history

• The first microprocessor was the 4-bit Intel 4004 released in 1971, with the Intel 8008 and
other more capable microprocessors becoming available over the next several years.
However, both processors required external chips to implement a working system, raising
total system cost, and making it impossible to economically computerize appliances.
• One book credits TI engineers Gary Boone and Michael Cochran with the successful
creation of the first microcontroller in 1971. The result of their work was the TMS 1000,
which became commercially available in 1974. It combined read-only memory, read/write
memory, processor and clock on one chip and was targeted at embedded systems.
• Partly in response to the existence of the single-chip TMS 1000, Intel developed a
computer system on a chip optimized for control applications, the Intel 8048, with
commercial parts first shipping in 1977. It combined RAM and ROM on the same chip.
This chip would find its way into over one billion PC keyboards, and other numerous
applications. At that time Intel's President, Luke J. Valenter, stated that the microcontroller
was one of the most successful in the company's history, and expanded the division's
budget over 25%.
37
System software and machine architecture,
simplified instructional computer (SIC), assembler,
loader , linker, macro processor ,compiler.

38
system software and machine architecture

• System programs on the other hand are intended to support the operation and use of the
computer itself, rather than any particular application.
• For this reason, they are usually related to the architecture of the machine on which they are
run. For example, assemblers translate mnemonic instructions into machine code.

39
System software

• System software consists of a variety of programs that support the operation of a computer.
• It is a set of programs to perform a variety of system functions as file editing, resource
management, I/O management and storage management. · The characteristic in which system
software differs from application software is machine dependency.
• An application program is primarily concerned with the solution of some problem, using the
computer as a tool.
• System programs on the other hand are intended to support the operation and use of the computer
itself, rather than any particular application.
• For this reason, they are usually related to the architecture of the machine on which they are run.
• For example, assemblers translate mnemonic(symbolic representation) instructions into machine
code. The instruction formats, addressing modes are of direct concern in assembler design.
• There are some aspects of system software that do not directly depend upon the type of computing
system being supported. These are known as machine independent features.
• For example, the general design and logic of an assembler is basically the same on most computers

40
System software

• Types of system software:


1. Operating system
2. Language translators
a. Compilers
b. Interpreters
c. Assemblers
d. Preprocessors
• 3 Loaders
• 4 Linkers
• 5 Macro processors

41
System Software

Probably nothing has influenced our lives more in the past 50 years than the invention of the
electronic computer. Today computers are nearly ubiquitous. They are in our homes, our cars,
our microwaves, our cellular phones, and even in our toys.
Tiny computers called microprocessors are responsible for controlling many of the common
appliances that we use every day from the automatic coffee maker to the hi-fi VCR.
One way to get a sense of the pervasive nature of modern computers is see how these
machines are depicted in art.
Click on the arrows below to browse through the computer art gallery.
See if you can identify with any of these humorous depictions of how computers influence
modern life.

42
What is an Assembler?

An assembler is a type of computer program that interprets software programs written in


assembly language into machine language, code and instructions that can be executed by a
computer.

An assembler enables software and application developers to access, operate and manage a
computer's hardware architecture and components.

An assembler is sometimes referred to as the compiler of assembly language. It also


provides the services of an interpreter. 43
SIC

• The Simplified Instructional Computer (also abbreviated SIC) is a


hypothetical computer system introduced in System Software.
• An Introduction to Systems Programming, by Leland Beck. Due to the fact that most
modern microprocessors include complex functions for the purposes of efficiency, it can be
difficult to learn systems programming using a real-world system. The Simplified
Instructional Computer solves this by abstracting away these complex behaviors in favor of
an architecture that is clear and accessible for those wanting to learn systems programming.

44
SIC Assembler

Simplified Instructional Computer (SIC) Machine Architecture

Memory
 Memory consists of 8-bit / 1byte
 Any 3 consecutive bytes form a word (24 bits)

45
Specified Instructional computer(SIC)

• Simplified Instructional Computer (SIC) is a hypothetical computer that has hardware


features which are often found in real machines.
• There are two versions of this machine:
• SIC standard Model
• SIC/XE(extra equipment or expensive)
• Object program for SIC can be properly executed on SIX/XE which is known as upward
compatibility.

46
loader

• In computer systems a loader is the part of an operating system that is responsible for
loading programs and libraries.
• It is one of the essential stages in the process of starting a program, as it places programs
into memory and prepares them for execution.
• Loading a program involves reading the contents of the executable file containing the
program instructions into memory, and then carrying out other required preparatory tasks to
prepare the executable for running.
• Once loading is complete, the operating system starts the program by passing control to the
loaded program code.

47
Linker

In computer science, a linker is a computer program that takes one or more object files
generated by a compiler and combines them into one, executable program.
Linker
Tool that merges the object files produced by separate compilation or assembly and creates an
executable file.
• Three tasks:-
Searches the program to find library routines used by program, e.g. printf(),sqrt(),strcat()
and various other.
Determines the memory locations that code from each module will occupy and relocates its
instructions by adjusting absolute references.
Relocation, which modifies the object program so that it can be loaded at an address
different from the location originally specified.
It combines two or more separate object programs and supplies the information needed to
allow references between them .
48
Linker

49
Macro processor

• A macro processor is a program that copies a stream of text from one place to another,
making a systematic set of replacements as it does so. Macro processors are often embedded
in other programs, such as assemblers and compilers. Sometimes they are standalone
programs that can be used to process any kind of text.

• A macro processor is not directly related to the architecture of the computer on which it is to
run
• Macro processors can also be used with high-level programming languages, OS command
languages, etc.

50
Compilers

Compiler
Compilation is a process that translates a program in one language
(the source language) into an equivalent program in another language
(the object or target language).

An important part of any compiler is the detection and reporting of errors. Thus
compilation is a fundamental concept in the production of software: it is the link between
the (abstract) world of application development and the low-level world of application
execution on machines. 51
Thanks

52

Das könnte Ihnen auch gefallen