From WikiChip
Editing microprocessor
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.
The edit can be undone.
Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
This page supports semantic in-text annotations (e.g. "[[Is specified as::World Heritage Site]]") to build structured and queryable content provided by Semantic MediaWiki. For a comprehensive description on how to use annotations or the #ask parser function, please have a look at the getting started, in-text annotation, or inline queries help pages.
Latest revision | Your text | ||
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. |
− | 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 | + | 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), [[microcontroller]]s, etc. |
== History == | == History == | ||
{{main|history of the microprocessor}} | {{main|history of the microprocessor}} | ||
{{empty section}} | {{empty section}} | ||
− | == | + | == Functionality== |
[[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. | |
− | 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. |
− | == | + | == Classification == |
− | |||
Most microprocessors can be classified as one of the follow: | Most microprocessors can be classified as one of the follow: | ||
Line 23: | Line 22: | ||
* '''[[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. | * '''[[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. | * '''[[digital signal processor]]''' ('''DSP''') - a microprocessor that specializes in the numerical manipulation of signals. | ||
− | * '''[[floating point unit]]''' ('''FPU''') - is a math microprocessor (or | + | * '''[[floating point unit]]''' ('''FPU''') - is a math microprocessor (or coprocesor) - a microprocessor that specializes in the creation and manipulation of [[floating point]] values. |
− | * '''[[graphics processing unit]]''' ('''GPU''') - is a | + | * '''[[graphics processing unit]]''' ('''GPU''') - is a graphic 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. |
− | |||
* '''[[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. | ||
− | * '''[[ | + | * '''[[coprocesor]]''' - 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. |
− | + | ||
+ | Emerging technologies: | ||
+ | |||
+ | * '''[[dataflow processing unit]]''' ('''DPU''') | ||
+ | * '''[[vision processing unit]]''' ('''VPU''') | ||
+ | * '''[[tensor processing unit]]''' ('''TPU''') | ||
+ | * '''[[video processing unit]]''' ('''VPU''') | ||
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. | 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. | ||
Line 34: | Line 38: | ||
== 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 [[ | + | 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: |
− | |||
* '''[[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. | ||
* '''[[microarchitecture]]''' - the functional description of the underlying circuitry of the microprocessor. | * '''[[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]]) | * '''[[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]]) | ||
− | |||
* '''[[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. |
* '''[[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. | ||
− | + | == Components == | |
+ | {{empty section}} | ||
− | == | + | == Parallelization == |
+ | {{main|parallelization}} | ||
+ | {{empty section}} | ||
+ | ===Instruction-level parallelism=== | ||
+ | {{main|instruction-level parallelism}} | ||
+ | <!-- | ||
+ | mention Scalar+Superscalar processors | ||
+ | --> | ||
+ | ===Control parallelism=== | ||
+ | {{main|control parallelism}} | ||
+ | {{empty section}} | ||
+ | ===Multiple cores=== | ||
+ | {{main|multi-core microprocessor}} | ||
{{empty section}} | {{empty section}} | ||
Line 65: | Line 80: | ||
{{main|microprocessor family}} | {{main|microprocessor family}} | ||
{{empty section}} | {{empty section}} | ||
+ | |||
+ | == Programmability== | ||
+ | {{empty section}} | ||
+ | <!-- | ||
+ | talk about the general idea of programming language -> compiler -> assembler | ||
+ | talk about ISA support for various programming functionality (e.g. RET/CALL/JAL) | ||
+ | --> | ||
== See also == | == See also == | ||
* [[List of processor families]] | * [[List of processor families]] | ||
+ | == References == | ||
+ | {{reflist|30em}} | ||
+ | |||
+ | |||
+ | |||
+ | {{Stub}} | ||
[[Category:integrated circuits]] | [[Category:integrated circuits]] | ||
− |