«

»

What is processor ?

embedded-processor

A microprocessor also known as a CPU or central processing unit  is a complete computation engine that is fabricated on a single chip. The first microprocessor was the Intel 4004, introduced in 1971. The 4004 was not very powerful all it could do was add and subtract, and it could only do that 4 bits at a time.

The CPU performs the calculations required by program instructions and places the results of these calculations, if required into memory space

The CPU does all the computing: it fetches, decodes and executes program instructions and directs the flow of data to and from memory.

pro

The fundamental operation of most CPUs, is to execute a sequence of stored instructions that is called a program. The instructions to be executed are kept in some kind of computer memory. Nearly all CPUs follow the fetch, decode and execute steps in their operation, which are collectively known as the instruction cycle.

processing unit  reads in instructions to perform specific actions. Instructions are chained together so that, when run in real time, they make up your computer experience. everything you do on your computer has to be processed by your processor. Whenever you open a folder, that requires your processor. When you type into a word document, that also requires your processor. Things like drawing the desktop environment, the windows, and game graphics are the job of your graphics card , which contains hundreds of processors to quickly work on data simultaneously, but to some extent they still require your processor as well.

Processors go through three main steps whenever they process instructions: fetch, decode and execute

fetch-execute-cycle

Fetch

The first step the CPU carries out is to fetch some data and instructions (program) from main memory This could include RAM, but in modern processor cores, the instructions are usually already waiting for the core inside the processor cache. then store them in its own internal temporary memory areas. These memory areas are called ‘registers’.

Decode

In order to figure out what the instruction should do, it needs to be decoded. Part of the decoding process fetches the input operands. For example, if you have an add instruction that adds the contents of register 1 and 2, and places the result in register, then the values of register 1 and 2 need to be fetched to perform the addition.

For an addi operation, you fetch one register, and you sign-extend an immediate value. Those two values are added. The CPU must know when it sees an add instruction to get two values from the registers, but when it sees an addi instruction, it must get the value from one register and a sign-extended immediate value. That’s where the “decoding” comes from.

Execute

The execute step is where the processor knows what it needs to do, and actually goes ahead and does it..

The result of this processing is stored in yet another register.

 

fecycle

The most important units inside CPU are:

Control unit

The control unit of the CPU contains circuitry that uses electrical signals to direct the entire computer system to carry out stored program instructions. The control unit does not execute program instructions; rather, it directs other parts of the system to do so. The control unit communicates with both the ALU and memory.

Arithmetic logic unit

The arithmetic logic unit (ALU) is a digital circuit within the processor that performs integer arithmetic and bitwise logic operations. The inputs to the ALU are the data words to be operated on (called operands), status information from previous operations, and a code from the control unit indicating which operation to perform. Depending on the instruction being executed, the operands may come from internal CPU registers or external memory, or they may be constants generated by the ALU itself.

When all input signals have settled and propagated through the ALU circuitry, the result of the performed operation appears at the ALU’s outputs. The result consists of both a data word, which may be stored in a register or memory, and status information that is typically stored in a special, internal CPU register reserved for this purpose.

ٌRegister

High-speed storage area within the CPU.A register may hold a computer instruction , a storage address, or any kind of data

 All data must be represented in a register before it can be processed. For example, if two numbers are to be multiplied, both numbers must be in registers, and the result is also placed in a register. (The register can contain the address of a memory location where data is stored rather than the actual data itself.)

The number of registers that a CPU has and the size of each (number of bits) help determine the power and speed of a CPU. For example a 32-bit CPU is one in which each register is 32 bits wide. Therefore, each CPU instruction can manipulate 32 bits of data.

You can define any processor by six things :

1-Processor Type,Application that work for .

2-Manufacturer company

3-Clock speed

4-bit number

5- cash memory

6-Number of cores

1-Processor Type,Application that work for

The processors have different types depend on what you will use it for, so if will use it for graphic and drawing 3d  or you dealing with images then you will need DSP processor ,for example if i have an image which contains 4 million matrix and i need to rotate it ,so i will make matrix inverse which will need a lot of calculation ,the digital signal processing processor is specialized in that type of mathematical calculation so it can done in short time.

processors types:

Hardware

  • Central processing unit (CPU), the hardware within a computer that executes a program

    • if designed conforming to the Von Neumann architecture, it contains a processing unit and a control unit

    • Microprocessor, a central processing unit contained on a single integrated circuit (IC)

      • Application-specific integrated circuit (ASIC), a microprocessor designed for a particular use case, rather than intended for general-purpose use

      • Application-specific instruction set processor (ASIP), a component used in system-on-a-chip design

      • Graphics processing unit (GPU), a processor designed for doing dedicated graphics rendering computations

      • Physics processing unit (PPU), a dedicated microprocessor designed to handle the calculations of physics

      • Digital signal processor (DSP), a specialized microprocessor designed specifically for digital signal processing

      • Image processor, a specialized DSP used for image processing in digital cameras, mobile phones or other devices

      • Coprocessor (as in pc audio card and vega card)

      • Floating-point unit

      • Network processor, a microprocessor specifically targeted at the networking application domain

      • Audio processor, a microprocessor used in studios and radio stations

  • Multi-core processor, single component with two or more independent CPUs (called “cores”) on the same chip carrier or on the same die

  • Front end processor, a helper processor for communication between a host computer and other devices

Software

  • Word processor, a computer application used for the production of printable material

  • Document processor, a computer application that superficially resembles a word processor—but emphasizes the visual layout of the document’s components

  • Systems

    • Information processor, a system which takes information in one form and transforms it into another form by an algorithmic process

    • Data processing system, a combination of machines, people, and processes that for a set of inputs produces a defined set of outputs

    • Information system, a system composed of people and computers that processes or interprets information

2-Manufacturer company

ARM

arm

Intel some examples:

intel

Qualcomm

Qualcomm snapdragon,this processor works with Samsung  galaxy s7 edge and HTC 10 and others

qualcomm-snapdragon-800-specs

AMD

3-Clock Speed

The clock speed (commonly referred to as the frequency) of a CPU is how many instructions per second it can process and is typically reported in MHz or GHz. For example, a 3GHz (or 3000MHz) processor can complete 3,000,000,000 instructions per second. For example, lets create a theoretical job that requires 1,000,000,000 instructions. A 3GHz process can complete this in roughly a third of a second, while a 1GHz CPU will take a full second to complete.

Due to variances in CPU architecture, two processors with the same clock speed will not necessarily perform the same job in the same amount of time. This is why AMD and Intel processors do not always perform the same even if the number of cores and clock speed are identical. Depending on the architecture, either one CPU or the other will have an advantage due to how efficiently the CPU can process all of the instructions. This is also evident when looking at newer versus older generations of CPUs. The Intel Core i7 Extreme QUAD CORE 965 3.2GHz is much faster than the Intel Core 2 Extreme QUAD CORE QX9775 3.2GHz even though it has the same clock speed and number of cores due to advancements found in the newer CPU’s architecture.

With all other things being equal – number of cores, cache size, architecture, etc – a higher clock speed will always be able to complete a set of instructions faster than a lower clock speed.

4-Bit Number ,Bus Type

Bit number   how much data processor can handle at one clock cycle

64 bit can handle instructures twice 32 bit at same cycle time so it can double the speed

The bus type of a CPU is the way in which the CPU cores communicate with the rest of the system. the bus type will not heavily influence the speed of the processor, but newer bus types are generally more efficient than older types. At the moment, QPI (Quick Path Interconnect) is the most common bus for Intel CPUs and Hypertransport is the most common for AMD CPUs.

5-Cache memory

Cash memory the memory which help to lowering the processing time for example :if i have a for loop for 40 step the processor need to access the ram every time and the ram is out the processor so it take time so with cash we can access the ram for the first time only in the loop and put the data in the cash then the processor for the remain 39 cycle will access the cash memory

Cache serves essentially the same purpose as the system RAM as it is a temporary storage location for data. Since  cache is on the CPU itself however, it is much faster for the CPU to access than the main system RAM,since the ram is external . The amount of cache available on a CPU can impact performance very heavily especially in environments with heavy multitasking.

cache can range anywhere from 256KB to 1MB (1024KB) per core.

6-Number of Cores

Originally, CPUs were manufactured with a single core that did all of the work. As computers became more advanced, it was found that a single core could no longer handle the workload which resulted in the CPU becoming a bottleneck. The solution was simple: add more cores! Each core is basically a whole new processor, so by adding a second core the power of the CPU was essentially doubled. While multiple cores almost immediately had an impact on multitasking, multiple cores were inefficient at first at powering high-load applications. This was due to the fact that the algorithms used by software at the time were not very effective at utilizing multiple cores. While still not perfect, more and more software is taking advantage of the multiple cores now available within CPUs resulting in better and better performance.

quad-core-cpu

What Is a Core?

Each CPU “core” is actually a separate central processing unit, which is the part of the CPU that actually does the work. For example, a dual-core chip may look like a single CPU chip, but it actually has two physical central processing units on the chip.

For example, let’s say you’re extracting an archive file and browsing the web at the same time. If you had a single-core CPU in your computer, web browsing wouldn’t be very responsive. The single core would have to split its time between web browsing and file-extraction tasks. If you had a dual-core CPU with two cores, one core would work on extracting the file while the other core did your web-browsing work. Web browsing would be much faster and more responsive.

Whether you’re doing multiple things at once or not, your computer is often doing system tasks in the background and you can benefit from additional cores to keep the operating system responsive. Applications can also be written to take advantage of multiple cores. For example, Google Chrome renders each website with a separate process. This allows Google Chrome to use different CPUs for different websites rather than using a single CPU for all browser-related tasks.

CPUs have a clock speed – think of it as how fast the CPU does work. (That’s actually an imperfect analogy as the truth is a lot more complicated, but it will have to do for now.)

For example, Intel’s Core i5-3330 processor has a clock speed of 3 GHz and is a quad-core processor, which means it has four cores. All four cores in this Intel i5 processor are each running at 3 GHz

Doubling The Cores Doesn’t Double The Speed

Many computer programs are single-threaded, which means that their work can’t be divided across multiple CPUs. They must each run on a single CPU. This means that doubling the cores won’t double their performance.

If you have a single-threaded application running on a 3 GHz quad-core CPU, that application will run at 3 GHz — not 12 GHz. It will use one core and the other three cores will sit idle, waiting for other tasks to perform.

Writing properly multithreaded applications that can scale across several CPUs at once is actually a difficult problem in computer science. It’s becoming a more crucial problem, as the future looks to be computers with more and more cores instead of fewer cores at faster and faster speeds.

Some applications can take advantage of multiple cores. Google Chrome’s multi-process architecture allows it to perform actions across several different cores at once. Some computer games can divide their calculations across multiple separate cores at once.

Dual Core, Quad Core & More

Phrases like “dual core,” “quad core,” and “octo core” all just refer to the number of cores a CPU has:

  • Dual Core: Two cores.

  • Quad Core: Four cores.

  • Hexa Core: Six cores.

  • Octo Core: Eight cores.

  • Deca Core: Ten cores.

For detailed information about Microprocessor process:

This is a great article from how stuff works

http://computer.howstuffworks.com/microprocessor.htm

 

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>