0% found this document useful (0 votes)
4 views

Single Core Processor

Uploaded by

Mworozi Dickson
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

Single Core Processor

Uploaded by

Mworozi Dickson
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 9

MBARARA UNIVERSITY OF SCIENCE AND TECHNOLOGY

FACULTY OF APPLIED SCIENCE AND TECHNOLOGY


MICROPROCESSORS
BME 3101

GROUP 4 ASSIGNMENT

NAME REGISTRATION NUMBER

NIMUKAMA ADSON 2021/EEE/100/PS

KAYEMBA DERRICK 2021/EEE/059/PS

MWOROZI DICKSON 2021/EEE/089/PS

ASIIMWE AMON 2021/EEE/025/PS

LUBEGA ABDUL 2021/EEE/066/PS

KANAJUNA BENJAMIN 2021/EEE/054/PS

MUSHEMEZA BRIAN 2021/EEE/082/PS

MUMBERE PRAISE DONALD 2021/EEE/080/PS

AMUTUHAIRE PROMISE 2021/EEE/020/PS

NAKAKAAWA MARIA ASSUMPTA 2021/EEE/093/PS

MPIIRWE STIDIA 2021/EEE/076/PS

KATUNGYE DOUGLAS 2021/EEE/057/PS

KEMIGISHA APOPHIA 2021/BME/150/PS


MUHANGI ARNOLD 2021/BME/151/PS

NAMBUYA BARBRA 2020/BME/088/PS

EZARUKU BATRE EMMY 2021/BME/038/PS

AIJUKA CHRISTINE 2021/BME/147/PS

ATUGONZA DAPHINE 2021/BME/019/PS

ASHABA JUDITH 2021/BME/017/PS

SSEGUYA SAMUEL 2021/EEE/110/PS


GROUP 4 ASSIGNMENT QUESTION:

a) Explain the following terms as used in microprocessors.

i. Single core processor.

ii. Multicore processor.

iii. Computational problems.

b) Explain the process of parallel processing.

a)

i. Single core processor

It is a processor that has only one core, so it can only start one operation at a time. It can also be
defined as a microprocessor with a single core on a chip, running a single thread or single
process at a time. It is difficult for single core processors to achieve performance gain, like
increase clock speed, increase number of transistors on a single chip, increase CPU cache sizes
or adding execution units.

The first single core processor was the intel 4004 and many improvements have been going from
740kHz of the Intel 4004 to the 2GHz Celeron you G470.

It has the following parameters:

 One primary core


 Sequential processing
 Low power
 Low efficiency
 Slow speed
 Carries out one task at a time therefore inefficient for multitasking hence low
performance

Examples include:
 Intel core solo T1300
 Intel core Dou 12700

Block diagram

ii. Multi core processor

This is a type of microprocessor that integrates two or more independent processing units, or
cores into a single chip. Each core is capable of executing its own set of instructions allowing the
processor to perform multiple tasks simultaneously. This design enhances overall performance
and efficiency as tasks can be distributed among the cores leading to faster and more parallel
processing compared to the single-core processor.

Types of Multi-core processor

1. A dual-core processor: This contains 2 cores.


2. Quad-core processor: This contains 4 cores.

Advantages of multi-core processor

1. Parallel processing: Tasks can be divided among multiple cores, enabling parallel
processing. This results in faster execution of programs and better overall system
performance.
2. Multi-tasking: This is much possible since each of the cores can ably handle a
separate task independently leading to smoother multi-tasking experiences.

3. Energy efficiency: This is because tasks can be distributed across cores preventing a
single-core from overloading.

4. Improved responsiveness: Multi-core processors enhance responsiveness of


applications especially in scenarios where tasks can be divided into smaller subtasks
that run simultaneously.

Disadvantages of multi-core processor

1. Software dependency: Some of the softwares may be designed to run on single-core,


which limits the performance of the multi-core processor.

2. Heat generation: Multi-core processors, especially high-performance cores can


generate more heat than their single core counter parts. This may necessitate more
advanced cooling solutions potentially increasing the overall system cost and energy
consumption.

3. Power consumption: While multi-core processors can be energy efficient, running


multiple cores simultaneously may still consume more power than single core
processors especially during heavy loads.

4. Compatibility issues: some legacy software or older operating systems may not fully
support or take advantage of multi-core architectures. Compatibility issues may arise
impacting the performance of certain application.

Applications of Multi-core processors

1. Desktop and Laptop computer: They are used in desktop and laptop computers to
improve multi-tasking capabilities, faster application execution and so on.

2. Servers: They often utilize multi-core processors to handle concurrent requests, run
multiple virtual machines and manage large scale data processing tasks efficiently.
This enhances the servers’ ability to serve multiple users/ clients simultaneously.
3. Mobile Devices: Many smartphones and tablets feature multi-core processors to
support multi-tasking, run demanding applications and deliver a smoother user
experience.

iii. A computational problem is a problem that can be solved step-by-step with a


computer. These problems usually have a well-defined input, constraints, and
conditions that the output must satisfy.

Types of computational problems:

Decision problem: This is one where the answer is yes or no. We are required to verify
whether the input satisfies a certain property or condition. For instance, "given a number n,
is n even?" is a decision problem.

Search problem: This is one where the solution consists of one or more values that satisfies
a given condition. For instance, we may want to compute a path from one geographical
location to another on a map.

Counting problem: This is one where the answer is the number of solutions to a search
problem.

Optimization problem: This is one where the solution is the "best" possible solution, where
the "best" can be defined in a different way. For instance, we may want to compute the
fastest route from one location to another.

NOTE: Questions such as "do I look good in this outfit?" are not computational problems,
because they do not have well-defined input, constraints, and conditions that the output must
satisfy.

Detailed process on how the microprocessor handles computational problems.

 Instruction Fetch: The microprocessor fetches instructions from the system’s memory.
These instructions represent the operations the microprocessor needs to perform.
 Instruction Decode: The fetched instructions are decoded to determine the operation to
be executed and operands involved. The control unit of the microprocessor interprets the
instruction’s operation code.

 Operand Fetch: If the instruction involves data manipulation, the microprocessor


fetches the necessary data(operands) from the registers or memory. These operands are
the values on which the computation will be performed.

 Execution Unit: This unit of the microprocessor carries out the actual computation or
operation specified by the instruction. This could include arithmetic operations (addition,
subtraction, multiplication, etc.) or logical operations.

 Result store: The result is then stored in the register or memory location, depending on
the nature of the operation and the design of the microprocessor.

 Control flow: The control unit manages the operations (flow of instructions, determining
the next instruction to be executed. This includes managing branches in the program
based on conditional statements or loops.

 Iterative process: Steps 1 to 6 are repeated for each instruction in the program. This
sequential execution of the instructions forms the basis of the microprocessor’s ability to
handle complex computational tasks.

b)

Parallel processing is the method in computing of running two or more processors to handle
separate parts of an overall task.

Parallel processing approaches

i. Single instruction, Single Data (SISD): Computers have one processor that handles
one algorithm using one source of data at a time.
The computer tackles and handles/processes each task in order and so sometimes people use
the word, “Sequential” to describe the SISD computer. They are not capable of doing parallel
processing on their own.

ii. Multiple Instruction, Single Data (MISD): Computers have multiple processors.
Each processor uses a different algorithm but uses the same shared input data.

MISD computers can analyses the same set of data using several different operations at the
same time. The number of operations depends upon the number of processors.

iii. Single Instruction, Multiple Data (SIMD): Computers have several processors that
follow the same set of instructions, but each processor inputs different data into those
instructions. SIMD computers run different data through the same algorithm. This can
be useful for analyzing large chunks of data based on the same criteria. Many
complex computational problems don’t fit this model.

iv. Multiple Instruction, Multiple Data: Computers have multiple processors, each
capable of accepting its own instruction stream independently from the others. Each
processor also pulls data from a separate data stream.

An MIMD computer can execute several processors at once. MIMD computers are more
flexible than SIMD or MISD computers, but more difficult to create the complex algorithms
that make these computers work.

How parallel processing works.

Typically, a computer scientist will divide a complex task into multiple parts with a software
tool and assign each part to a processor. Then each processor will solve its part, and the data
is reassembled by a software tool to read the solution or execute the task.

Each processor will operate normally and will perform operations in parallel as instructed,
pulling data from the computers’ memory. Processors will also rely on software to
communicate with each other so they can stay in sync concerning data values. Assuming all
the processes remain in sync with another, at the end of a task, software will fit all data
pieces together.

You might also like