Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 8

Running head: SHORTENED TITLE UP TO 50 CHARACTERS 1

Add Title Here, up to 12 Words, on One to Two Lines

Author Name(s), First M. Last, Omit Titles and Degrees

Institutional Affiliation(s)

Author Note

Include any grant/funding information and a complete correspondence address.


SHORTENED TITLE UP TO 50 CHARACTERS 2

Microcontroller vs Microprocessor

Microprocessor or microcontroller both may have few similar features, the partial reason

why it have always been such a confusion between two. But two have very distinct features and

functionality. By looking at them the difference is not noticeable as both are integrated circuit or

ICs. Their IC’s version starts from 6 pins to 100 pins and even higher depending on the

functional complexity.

Microcontroller is a computer represented in an integrated circuit chip which is made up

of metal-oxide semiconductor. This is included mainly in system on a chip and it is to be use in

embedded applications. It contains CPU processor cores along with memory and programmable

input output peripherals. Microcontrollers are used in embedded systems such automobile, home

appliances, office appliances, medical devices, remote control and many more. Some

manufacturers are ATMEL, Microchip, TI, Freescale, Philips, Motorola etc., which produce

different versions. Microprocessor on the other hand only have CPU, the processing unit. Few

examples are, Intel’s Pentium 1,2,3,4, core 2 duo, i3, i5 etc. Memory and input-output

peripherals are attached externally. These are use in Laptops, PC, notepads, mobile phones, etc.

Microcontrollers usually performs specific task which involves I/O operation, where the

input is taken and then some processing needs to be done. According to the input received the

output is corresponding to that. This is the reason why they have processor and memory both in a

single IC, which makes it cost effective and reduced size. Microprocessor are use with the

devices where the relation between input and output are not defined and hence it needs much

larger processor to process more complex I/O operations and other resources such as memory.

The clock of microprocessor is higher than that of microcontroller. Microprocessor

operates on clock more than 1GHz while microcontroller can only operate on 30-50 MHz
SHORTENED TITLE UP TO 50 CHARACTERS 3

Applications of both are quite different a microcontroller cannot be use in place in

microprocessor and using microprocessor in replacement of microcontroller will unnecessary

will make the device costly.

RISC or CISC and their vendors

RISC and CSIC are both ISA (Instruction Set Architecture), which provides the medium

between the computer and user or a layer between processor and programmer. Instruction sets

are given to processor and architecture is the how to build this medium.

RISC (Reduced Instruction Set Computer) is widely used as it is a predecessor of CSIC

with more advancement and technology. Mostly all the mobile phone companies such as Apple,

Samsung, etc. uses RISC architecture. The reason they uses it because RISC heavily dependent

on software rather than hardware as most of the functionality is being done with software, so it

requires more memory capacity of RAM and ROM both. It is simple programming and

instruction decoding. Single instruction takes single clock cycle to complete its operation.

Registers such as CPU registers are widely used and hence to excess the memory simple

addressing mode is utilized. Pipelining can be easily achieved through RISC. It is also battery

efficient. Due to all these characteristics of RISC, mobile phones mostly use RISC to make the

device more compact and portable with less need of the hardware.

CISC (Complex Instruction Set Computer) depends on reducing the memory capacity.

Larger programs requires a much larger memory and hence it will get expensive, in order to

reduce that cost CISC is use. In CISC, this is achieved by reducing number of instructions by

increasing the number of operations per instruction hence making the instruction more complex.

In turn, it have complex addressing mode and as most of the instruction are being executed in

memory itself. Requires a smaller number of CPU registers and one instruction depending on its
SHORTENED TITLE UP TO 50 CHARACTERS 4

complexity will take more than one clock cycle. CISC is being used by Intel, Dell, Motorola and

to some extend HP.

Which one is better? It depends as both have its own advantage and disadvantage

according to the need of the vendors and users.

Amdahl Law

This law was proposed by scientist from IBM and Amdahl corporation name Gene

Amdahl in 1976. It is a formula which gives the theoretical speedup in transfer of data before the

delay of the execution of a instruction at a fixed workload that can be expected of a system

whose system has been are upgraded. In other words, it is a formula used to find the maximum

improvement possible by just improving a part of a system. It is often used in parallel

computing to predict the theoretical speedup when using multiple processors.

Performance of a processor is judge by the execution time of a task hence speedup if we

relate it to performance can be that before any enhancement how much time it took to execute a

task and after enhancement how much time now it takes to execute the same task. Speed up is

the ratio of the two time. For the overall enhancements Amdahl law’s take two factors:

 Fraction Enhancements: the fraction of enhancement time in the original

computer to run a task. It is always lesser than 1.

 Speedup Enhancements: the improvement gained by enhanced execution mode. It

is always greater than 1.

Speedup = 1/((1-p) +(p/s))

Speedup = maximum performance gain


s = performance gain factor of p after implement the enhancements.

p = the part which performance needs to be improved.


SHORTENED TITLE UP TO 50 CHARACTERS 5

It is use in memory hierarchal design. Amdahl's law can be applied to get a rough estimate of the

performance of the memory systems in the hierarchy. For example, the speedup of main memory

access due to a single-level cache memory is given by the formula:

S = " H + (1 - h) * "

h: cache hit ratio ": Tm/Tc

Tm: main memory access time

Tc: cache memory access time

It is also use in instruction set and processor design. Here, the fraction of task that does not use

the feature limits the performance or speedup. This should guide the designers in the design

process. For example, before an attempt is made to improve the speed of multiplication

operation, one should know roughly the fraction of time a task performs multiply operations.

Suppose a task takes 100 seconds to run on a processor. Say40% of this time is consumed by

multiply operations (which we will try to improve). Since 60% of the task is unaffected by the

improvement, the speedup is given by S = 100 / (60+(40/K)) where multiply operation is made

K-times faster.

Definitions

 Victim Cache: It is a hardware technique to improve the cache activity. It is

designed to decrease conflict misses and improve hit latency for direct-mapped

caches. Any cache line which gets remove from the cache is being held by victim

cache and it itself is a pathway and embedded in Level 1 cache. Hence victim

cache will only contain data when level 1 cache is disturbed and then if the data in
SHORTENED TITLE UP TO 50 CHARACTERS 6

level 1 matches the victim cache so the cache lines are swapped for smooth

transfer of data.

 Principal of Locality: It is also known as locality of reference and it is the

tendency of the processor to access the same location or address of the memory in

a short period of time. Locality is type of computer system which determines

strong locality of reference are great candidates for performance optimization

through the use of techniques such as the caching, prefetching for memory and

advanced branch predictors at the pipelining stage of a processor core.

 Spatial Locality: If a memory address is being referenced currently, then it is

likely that other close locations around it will referenced soon after or in the

future. So when that current location is referred it’s surrounding size and shape is

guess to optimize the referencing of the processor.

 Temporal Locality: If there is a memory location that needs to referred very

frequently in the short time so it is good to make a copy of it in a fast memory

which reduces the referencing time in the memory. Temporal locality is a special

case of spatial locality, when the guess location in the future is as same as current

location.

 Unified Cache: It is a cache type which have data and instruction both together in

order to reduce the load of between data and instruction. It is useful for such

program that runs different operations on the same small amount of data

 Split Cache: it is a cache which consist of two different physical part to store

different content of data. One part stores the set of instructions and other part to

store the data on which the operation or set of instruction relates to. This is useful
SHORTENED TITLE UP TO 50 CHARACTERS 7

for extensive programs where the instruction and data is to be access and execute

consecutively.

 Access Time: it is simply the time taken to retrieve data from the memory.

 Memory Cycle Time: it is the measure of delay between one random access time

to the other when the RAM can be access.

 Transfer Rate: it the measure of amount of data transfer from one location to the

other in a specific unit time. It is usually measured in bits per second or bytes per

second.

 CPI:

Factors that lowers the performance of a machine.

Write back and Write through

Write no allocate and allocate on write

Pipeline
SHORTENED TITLE UP TO 50 CHARACTERS 8

References

Last Name, F. M. (Year). Article Title. Journal Title, Pages From - To.

Last Name, F. M. (Year). Book Title. City Name: Publisher Name

You might also like