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''' | + | A '''microprocessor''' ('''µP''', '''MPU''') is a device that implements the core elements of a computer system on a single [[integrated circuit]], or at most a few integrated circuits. |
− | 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 | + | 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 interface]]s, [[interrupt handler|interrupts]], [[input/output]] interfaces, and [[cache]]. Specialized microprocessor may also serve as or include [[graphical processing unit]]s (GPUs), [[digital signal processor|signal processing units]] (DSPs), [[memory]], and various other peripherals. |
== 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 22: | Line 21: | ||
* '''[[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 driver]]s, and [[FPGA]]. SoCs are capable of running full-fledged modern operating systems with all their features. | * '''[[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 driver]]s, 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. | * '''[[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. | ||
+ | * '''[[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 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. | ||
* '''[[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. | ||
− | * '''[[ | + | * '''[[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. |
− | |||
− | |||
− | |||
− | |||
− | |||
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. | ||
− | == | + | == Architecture == |
− | {{main | + | {{main|architecture|microarchitecture|instruction set architecture}} |
− | + | {{empty section}} | |
+ | <!-- | ||
+ | Talk about a few general architectures - Von Neumann Architecture | ||
+ | --> | ||
+ | === Word size === | ||
+ | {{empty section}} | ||
− | + | === Endianness === | |
− | + | {{main|endianness}} | |
− | + | {{empty section}} | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | ===Complexity=== | |
+ | {{main|risc|cisc|risc-cisc hybrid}} | ||
+ | {{empty section}} | ||
== Components == | == 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 77: | ||
{{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}} |