From WikiChip
Difference between revisions of "microprocessor"

(Specifications)
(10 intermediate revisions by 5 users not shown)
Line 1: Line 1:
 
{{title|Microprocessor (MPU)}}
 
{{title|Microprocessor (MPU)}}
 
[[File:KL MF8008.jpg|right|350px]]
 
[[File:KL MF8008.jpg|right|350px]]
A '''microprocessor''' ('''µP''') or a '''Microprocessing Unit''' ('''MPU''') is a device that implements the core elements of a computer system on a single [[integrated circuit]], or as a few integrated circuits operating as a cohesive unit.
+
A '''microprocessor''' ('''µP''') or a '''Microprocessing Unit''' ('''MPU''') is a device that implements the core elements of a computer system on a single [[integrated circuit]], or as a few integrated circuits operating as a cohesive unit, designed for the processing digital data.
  
 
Modern microprocessors typically incorporate the functionality of a [[clock generator|clock]], [[central processing unit]] (CPU), [[arithmetic logic unit]] (ALU), [[floating point unit]] (FPU), [[control unit]] (CU), [[memory management unit]] (MMU), [[interrupt handler|interrupts]], [[input/output]] interfaces, and [[cache]]. Specialized microprocessor may also serve as [[graphical processing unit]]s (GPUs), [[digital signal processor|signal processing units]] (DSPs), [[neural processing unit]] (NPUs), [[microcontroller]]s, etc.
 
Modern microprocessors typically incorporate the functionality of a [[clock generator|clock]], [[central processing unit]] (CPU), [[arithmetic logic unit]] (ALU), [[floating point unit]] (FPU), [[control unit]] (CU), [[memory management unit]] (MMU), [[interrupt handler|interrupts]], [[input/output]] interfaces, and [[cache]]. Specialized microprocessor may also serve as [[graphical processing unit]]s (GPUs), [[digital signal processor|signal processing units]] (DSPs), [[neural processing unit]] (NPUs), [[microcontroller]]s, etc.
Line 8: Line 8:
 
{{main|history of the microprocessor}}
 
{{main|history of the microprocessor}}
 
{{empty section}}
 
{{empty section}}
== Functionality==
+
== Overview ==
 
[[File:IPO (input-process-output).svg|400px|right]]
 
[[File:IPO (input-process-output).svg|400px|right]]
In the broadest sense, the basic functionality of a microprocessor is to continuously read in digital data consisting of instructions and possibly values; execute them by interpreting the instructions and performing a certain operation on the values; and finally outputs a result.
+
Microprocessors are [[instruction set processors]] (ISPs), meaning they operate on a predefined [[instruction set|set of instructions]]. In the broadest sense, their basic functionality is to continuously read in digital data consisting of instructions and possibly values; execute them by interpreting the instructions and performing a certain operation on the values; and finally outputs a result.
  
While the basic functionality is shared among all microprocessors, they vary greatly in the type and size of data they handle, the kind of operations they support, how they perform those operations, their intended purpose, and their performance characteristics.
+
While the basic functionality is shared among all microprocessors, they vary greatly in the type and size of data they handle, the kind of operations they support, how they perform those operations, their intended purpose, and their performance characteristics. The functionality of a microprocessor is dependent on the characteristics of the [[instruction set]] it operates on. Every program that runs on that microprocessor is therefore bound by that [[instruction set architecture]] (ISA) and is encoded in that instruction set. The [[instruction set architecture]] is the specification of a microprocessor design while the realization of an ISA is known as the [[microarchitecture|implementation]]. There can, and usually are, multiple implementations for a second ISA specification. Those implementations are known as [[microarchitectures]]. The kind of tradeoffs made in a [[microarchitecture]] ultimately determines the characteristics of the microprocessor (e.g., power and performance).
  
 
== Variants ==
 
== Variants ==
Line 25: Line 25:
 
* '''[[floating point unit]]''' ('''FPU''') - is a math microprocessor (or [[coprocessor]]) - a microprocessor that specializes in the creation and manipulation of [[floating point]] values.
 
* '''[[floating point unit]]''' ('''FPU''') - is a math microprocessor (or [[coprocessor]]) - a microprocessor that specializes in the creation and manipulation of [[floating point]] values.
 
* '''[[graphics processing unit]]''' ('''GPU''') - is a graphics microprocessor - a microprocessor that specializes in the creation and manipulation of images through a set of optimized geometric operations. Modern graphic microprocessors tend to be highly parallelized, allowing large blocks of visual data to be processed efficiently.
 
* '''[[graphics processing unit]]''' ('''GPU''') - is a graphics microprocessor - a microprocessor that specializes in the creation and manipulation of images through a set of optimized geometric operations. Modern graphic microprocessors tend to be highly parallelized, allowing large blocks of visual data to be processed efficiently.
 +
* '''[[vector processor]]''' ('''VPU''') - a vector processor is microprocessor that implements operations that manipulate one/multi-dimensional arrays of data known as vectors.
 
* '''[[physics processing unit]]''' ('''PPU''') - a microprocessor that specializes in handling the calculations of physics. This includes things such as fluid dynamics and collision detection.
 
* '''[[physics processing unit]]''' ('''PPU''') - a microprocessor that specializes in handling the calculations of physics. This includes things such as fluid dynamics and collision detection.
 
* '''[[neural processing unit]]''' ('''NPU''') - is a neural microprocessor - a microprocessor that specializes in the manipulations of [[predictive models]].
 
* '''[[neural processing unit]]''' ('''NPU''') - is a neural microprocessor - a microprocessor that specializes in the manipulations of [[predictive models]].
Line 33: Line 34:
 
== Specifications ==
 
== Specifications ==
 
{{main|central processing unit|architecture|microarchitecture|instruction set architecture}}
 
{{main|central processing unit|architecture|microarchitecture|instruction set architecture}}
The technical specifications of microprocessors are derived from the [[microarchitecture]] of the incorporated [[central processing unit|CPU]], the [[semicondcutor]] technology involved, and the properties of the overall system. Some common specifications are summarized below:  
+
The technical specifications of microprocessors are derived from the [[microarchitecture]] of the incorporated [[central processing unit|CPU]], the [[semiconductor]] technology involved, and the properties of the overall system. Some common specifications are summarized below:  
  
 +
* '''[[instruction set architecture]]'''
 
* '''[[logic family|technology]]''' - the semiconductor technology used to create the MPU (e.g. [[CMOS]], [[BiCMOS]], and [[TTL]])
 
* '''[[logic family|technology]]''' - the semiconductor technology used to create the MPU (e.g. [[CMOS]], [[BiCMOS]], and [[TTL]])
 
* '''[[semiconductor manufacturing process|process]]''' - the process used to manufacture the MPU - i.e the [[feature size]] and design rules. The feature size on its own (e.g. [[10 µm]]) is usually taken as a synonym for the process.
 
* '''[[semiconductor manufacturing process|process]]''' - the process used to manufacture the MPU - i.e the [[feature size]] and design rules. The feature size on its own (e.g. [[10 µm]]) is usually taken as a synonym for the process.
Line 41: Line 43:
 
* '''[[core count]]''' - the number of [[physical cores]] incorporated into the chip.
 
* '''[[core count]]''' - the number of [[physical cores]] incorporated into the chip.
 
* '''[[endianness]]''' - the order of the bytes the microprocessor uses when operating on multi-byte values.
 
* '''[[endianness]]''' - the order of the bytes the microprocessor uses when operating on multi-byte values.
* '''[[base frequency]]''' - the internal operating frequency of CPU's core. It's one of many parameters that are used to assess the performance of a microprocessor.
+
* '''[[clock frequency]]''' - the internal operating frequency of CPU's core. It's one of many parameters that are used to assess the performance of a microprocessor.
 
* '''[[package]]''' - the physical casing of the microprocessor. This most often goes along with a [[socket]], which is the interconnects that sits on the circuit board itself where the package is inserted into.
 
* '''[[package]]''' - the physical casing of the microprocessor. This most often goes along with a [[socket]], which is the interconnects that sits on the circuit board itself where the package is inserted into.
  
Line 67: Line 69:
 
* [[List of processor families]]
 
* [[List of processor families]]
  
== References ==
 
{{reflist|30em}}
 
 
 
 
{{Stub}}
 
 
[[Category:integrated circuits]]
 
[[Category:integrated circuits]]
 +
[[Category:microprocessors]]

Revision as of 23:41, 15 September 2019

KL MF8008.jpg

A microprocessor (µP) or a Microprocessing Unit (MPU) is a device that implements the core elements of a computer system on a single integrated circuit, or as a few integrated circuits operating as a cohesive unit, designed for the processing digital data.

Modern microprocessors typically incorporate the functionality of a clock, central processing unit (CPU), arithmetic logic unit (ALU), floating point unit (FPU), control unit (CU), memory management unit (MMU), interrupts, input/output interfaces, and cache. Specialized microprocessor may also serve as graphical processing units (GPUs), signal processing units (DSPs), neural processing unit (NPUs), microcontrollers, etc.

History

Main article: history of the microprocessor
New text document.svg This section is empty; you can help add the missing info by editing this page.

Overview

IPO (input-process-output).svg

Microprocessors are instruction set processors (ISPs), meaning they operate on a predefined set of instructions. In the broadest sense, their basic functionality is to continuously read in digital data consisting of instructions and possibly values; execute them by interpreting the instructions and performing a certain operation on the values; and finally outputs a result.

While the basic functionality is shared among all microprocessors, they vary greatly in the type and size of data they handle, the kind of operations they support, how they perform those operations, their intended purpose, and their performance characteristics. The functionality of a microprocessor is dependent on the characteristics of the instruction set it operates on. Every program that runs on that microprocessor is therefore bound by that instruction set architecture (ISA) and is encoded in that instruction set. The instruction set architecture is the specification of a microprocessor design while the realization of an ISA is known as the implementation. There can, and usually are, multiple implementations for a second ISA specification. Those implementations are known as microarchitectures. The kind of tradeoffs made in a microarchitecture ultimately determines the characteristics of the microprocessor (e.g., power and performance).

Variants

Microprocessors come in various flavors with Most microprocessors can be classified as one of the follow:

  • general-purpose microprocessors - the most common form of microprocessors, not designed for any one specific task in mind. Instead they are designed to support a broad array of operations.
  • bit-slice microprocessor (BSM) - a microprocessor designed as a module intended to be built up like Lego blocks into a desired word size and architecture as needed.
  • system on chip (SoC) - a microprocessor that contains all the components of a computer system, including the extra functionality that would normally be provided by auxiliary chips, which could include things such as wireless, ethernet, SD card, ADC, DAC, LCD drivers, and FPGA. SoCs are capable of running full-fledged modern operating systems with all their features.
  • microcontroller (MCU) - a microprocessor that contains a few additional components such as RAM, ROM, and programmable I/O ports primarily designed to control and drive other electronic equipment. MCUs are designed to be embedded, usually in a highly restrictive environment. They usually consume very little power, may run relatively slow, and typically execute individual task-specific programs.
  • digital signal processor (DSP) - a microprocessor that specializes in the numerical manipulation of signals.
  • floating point unit (FPU) - is a math microprocessor (or coprocessor) - a microprocessor that specializes in the creation and manipulation of floating point values.
  • graphics processing unit (GPU) - is a graphics microprocessor - a microprocessor that specializes in the creation and manipulation of images through a set of optimized geometric operations. Modern graphic microprocessors tend to be highly parallelized, allowing large blocks of visual data to be processed efficiently.
  • vector processor (VPU) - a vector processor is microprocessor that implements operations that manipulate one/multi-dimensional arrays of data known as vectors.
  • physics processing unit (PPU) - a microprocessor that specializes in handling the calculations of physics. This includes things such as fluid dynamics and collision detection.
  • neural processing unit (NPU) - is a neural microprocessor - a microprocessor that specializes in the manipulations of predictive models.
  • coprocessor - a microprocessor that aides a master microprocessor by either offloading some of its work or by providing additional specialized processing operations, e.g. cryptography, math, graphics, string processing, or I/O interfacing. A coprocessor can act as an extension of the master microprocessor by extending the instruction set architecture or by acting like another peripheral on the main bus.

Some microprocessors can be a hybrid combinations of a few of the above. For example, a general-purpose microprocessor might come with an integrated GPU, implying an additional graphic processing unit has been added to the microprocessor to enable it to manipulate visual data more efficiently. Likewise almost all modern desktop microprocessors come with integrated floating point units.

Specifications

Main articles: central processing unit, architecture, microarchitecture, and instruction set architecture

The technical specifications of microprocessors are derived from the microarchitecture of the incorporated CPU, the semiconductor technology involved, and the properties of the overall system. Some common specifications are summarized below:

  • instruction set architecture
  • technology - the semiconductor technology used to create the MPU (e.g. CMOS, BiCMOS, and TTL)
  • process - the process used to manufacture the MPU - i.e the feature size and design rules. The feature size on its own (e.g. 10 µm) is usually taken as a synonym for the process.
  • microarchitecture - the functional description of the underlying circuitry of the microprocessor.
  • word size - the word size of a microprocessor usually refers specifically to the data word size used - i.e. highest operand width used to manipulate standard integer values. (this excludes special processing units such as SIMD and FPU)
  • core count - the number of physical cores incorporated into the chip.
  • endianness - the order of the bytes the microprocessor uses when operating on multi-byte values.
  • clock frequency - the internal operating frequency of CPU's core. It's one of many parameters that are used to assess the performance of a microprocessor.
  • package - the physical casing of the microprocessor. This most often goes along with a socket, which is the interconnects that sits on the circuit board itself where the package is inserted into.

Note that not all the specifications listed above apply to all the types of microprocessors.

Components

New text document.svg This section is empty; you can help add the missing info by editing this page.

Design

A prototype of a RISC-V microprocessor with the heat spreader removed, showing the exposed die, January 2013
Main articles: integrated circuit and integrated circuit design
New text document.svg This section is empty; you can help add the missing info by editing this page.

Computational power

New text document.svg This section is empty; you can help add the missing info by editing this page.

Families

Main article: microprocessor family
New text document.svg This section is empty; you can help add the missing info by editing this page.

See also