Multiprocessor system on a chip: Difference between revisions
Line 1: | Line 1: | ||
A '''multiprocessor system-on-chip''' ({{Abbr|'''MPSoC'''|Multi-processor System on a Chip}}''',''' {{IPAc-en|ˌ|ɛ|m|ˌ|p|iː|'|s|ɒ|k}} ''{{respell|em|pee|SOCK}}'' or {{IPAc-en|ˌ|ɛ|m|ˌ|p|iː|ˌ|ɛ|s|ˌ|oʊ|ˈ|s|iː|}} {{respell|em|PEE|ess|oh|SEE}}) is a [[system-on-a-chip]] (SoC) which includes multiple [[microprocessors]]. As such, it is a [[multi-core]] System-on-Chip. |
A '''multiprocessor system-on-chip''' ({{Abbr|'''MPSoC'''|Multi-processor System on a Chip}}''',''' {{IPAc-en|ˌ|ɛ|m|ˌ|p|iː|'|s|ɒ|k}} ''{{respell|em|pee|SOCK}}'' or {{IPAc-en|ˌ|ɛ|m|ˌ|p|iː|ˌ|ɛ|s|ˌ|oʊ|ˈ|s|iː|}} {{respell|em|PEE|ess|oh|SEE}}) is a [[system-on-a-chip]] (SoC) which includes multiple [[microprocessors]]. As such, it is a [[multi-core]] System-on-Chip. |
||
MPSoCs usually targeted for embedded applications. It is used by platforms that contain multiple, usually [[Heterogeneous computing|heterogeneous]], processing elements with specific functionalities reflecting the need of the expected application domain, a memory hierarchy |
MPSoCs usually targeted for embedded applications. It is used by platforms that contain multiple, usually [[Heterogeneous computing|heterogeneous]], processing elements with specific functionalities reflecting the need of the expected application domain, a memory hierarchy and [[Input/output|I/O]] components. All these components are linked to each other by an on-chip interconnect called a [[Network on a chip|Network-on-Chip]] (NoC). These [[Computer architecture|architectures]] meet the performance needs of [[multimedia]] applications, [[telecommunication]] architectures, [[network security]] and other application domains while limiting the power consumption through the use of [[Application-specific integrated circuit|specialised processing elements]] and architecture. |
||
== |
== Structure == |
||
{{See also|System on a chip#Structure}}{{Expand section|date=October 2018}} |
|||
⚫ | |||
A multiprocessor system-on-chip must by definition have multiple [[Processor core|processor cores]]. MPSoCs often contain multiple logically distinct [[Processor (computing)|processor]] modules as well. |
|||
at least one [[processor core]] |
|||
** This can be a [[microcontroller]] (μC), [[microprocessor]] (μP), [[digital signal processor]] (DSP) or [[application-specific instruction set processor]] (ASIP) core. |
|||
** [[Multi-processor system-on-chip|Multiprocessor SoCs]] have more than one processor core. |
|||
* [[Computer memory|memory blocks]] including a selection of [[Read-only memory|ROM]], [[Random-access memory|RAM]], [[EEPROM]] and [[flash memory]]<ref name="Furber ARM">{{Cite book|url=https://www.worldcat.org/oclc/44267964|title=ARM system-on-chip architecture|last=Furber|first=Stephen B.|publisher=Addison-Wesley|year=2000|isbn=0201675196|location=Harlow, England|pages=|oclc=44267964}}</ref> |
|||
* [[Clock generator|timing sources]]/[[clock signal]] generators, including [[Crystal oscillator|oscillators]] and [[Phase-locked loop|phase-locked loops]] to control execution of SoC functions |
|||
* peripherals including [[Counter (digital)|counter]]-timers, real-time [[Timer|timers]] and [[power-on reset]] generators |
|||
* external [[Electrical connector|interfaces]], typically for [[Communication protocol|communication protocols]] |
|||
** These are often based upon industry standards such as [[USB]], [[FireWire]], [[Ethernet]], [[Universal synchronous and asynchronous receiver-transmitter|USART]], [[Serial Peripheral Interface|SPI]], [[HDMI]], [[I²C]], etc. |
|||
** These interfaces will differ according to the intended application. |
|||
* [[Analog signal|analog]] interfaces including [[Analog-to-digital converter|analog-to-digital]] and [[Digital-to-analog converter|digital-to-analog converters]] |
|||
** These may be able to interface with different types of [[Sensor|sensors]] or [[Actuator|actuators]], including [[Smart transducer|smart transducers]] |
|||
** They may interface with application-specific [[Modularity|modules]] or shields.<ref group="nb">In [[Embedded system|embedded systems]], "shields" are analogous to [[Expansion card|expansion cards]] for [[Personal computer|PCs]]. They often fit over a [[microcontroller]] such as an [[Arduino]] or [[single-board computer]] such as the [[Raspberry Pi]] and function as [[Peripheral|peripherals]] for the device.</ref> |
|||
** Or they may be internal to the SoC, such as if an analog sensor is built-in to the SoC and its readings must be converted to digital signals for mathematical processing. |
|||
* [[Voltage regulator|voltage regulators]] and [[power management]] circuits |
|||
(often using [[scratchpad RAM]] and [[direct memory access]]) |
|||
== Applications == |
|||
{{Expand section|date=October 2018}} |
|||
MPSoCs are used when [[Microcontroller|microcontrollers]] or systems-on-chip must have [[multiprocessing]] capabilities. This can include [[smartphone]] devices, [[Embedded system|embedded systems]], [[Digital signal processor|digital signal processors]] and other various applications. |
|||
==Examples== |
==Examples== |
||
This section is a short list of multiprocessor systems-on-chip. |
|||
⚫ | |||
*[[Cell_(microprocessor)|CELL processor]] |
*[[Cell_(microprocessor)|CELL processor]] |
||
*[[Adapteva|Adapteva's Epiphany architecture]] |
*[[Adapteva|Adapteva's Epiphany architecture]] |
||
⚫ | |||
== Design considerations == |
|||
{{Empty section|date=October 2018}} |
|||
==Benchmarks== |
|||
⚫ | |||
==See also== |
==See also== |
||
*[[Multi-core processor]] |
|||
*[[System on a chip]], of which an MPSoC is a subtype. |
*[[System on a chip]], of which an MPSoC is a subtype. |
||
*[[ |
*[[Manycore processor]] |
||
*[[Multiprocessing]] |
|||
*[[Symmetric multiprocessing]] (SMP) |
|||
*[[Computer multitasking|multitasking]] |
|||
*[[Parallel computing]] |
*[[Parallel computing]] |
||
*[[Programmable system-on-chip]] (PSoc) |
|||
*[[Vision Processing Unit]] |
|||
*[[Hardware acceleration]] |
|||
*[[PSoC]] |
|||
==References== |
==References== |
Revision as of 07:53, 11 October 2018
A multiprocessor system-on-chip (MPSoC, /ˌɛmˌpiːˈsɒk/ em-pee-SOCK or /ˌɛmˌpiːˌɛsˌoʊˈsiː/ em-PEE-ess-oh-SEE) is a system-on-a-chip (SoC) which includes multiple microprocessors. As such, it is a multi-core System-on-Chip.
MPSoCs usually targeted for embedded applications. It is used by platforms that contain multiple, usually heterogeneous, processing elements with specific functionalities reflecting the need of the expected application domain, a memory hierarchy and I/O components. All these components are linked to each other by an on-chip interconnect called a Network-on-Chip (NoC). These architectures meet the performance needs of multimedia applications, telecommunication architectures, network security and other application domains while limiting the power consumption through the use of specialised processing elements and architecture.
Structure
This section needs expansion. You can help by adding to it. (October 2018) |
A multiprocessor system-on-chip must by definition have multiple processor cores. MPSoCs often contain multiple logically distinct processor modules as well.
at least one processor core
- This can be a microcontroller (μC), microprocessor (μP), digital signal processor (DSP) or application-specific instruction set processor (ASIP) core.
- Multiprocessor SoCs have more than one processor core.
- memory blocks including a selection of ROM, RAM, EEPROM and flash memory[1]
- timing sources/clock signal generators, including oscillators and phase-locked loops to control execution of SoC functions
- peripherals including counter-timers, real-time timers and power-on reset generators
- external interfaces, typically for communication protocols
- analog interfaces including analog-to-digital and digital-to-analog converters
- These may be able to interface with different types of sensors or actuators, including smart transducers
- They may interface with application-specific modules or shields.[nb 1]
- Or they may be internal to the SoC, such as if an analog sensor is built-in to the SoC and its readings must be converted to digital signals for mathematical processing.
- voltage regulators and power management circuits
(often using scratchpad RAM and direct memory access)
Applications
This section needs expansion. You can help by adding to it. (October 2018) |
MPSoCs are used when microcontrollers or systems-on-chip must have multiprocessing capabilities. This can include smartphone devices, embedded systems, digital signal processors and other various applications.
Examples
This section is a short list of multiprocessor systems-on-chip.
Design considerations
This section is empty. You can help by adding to it. (October 2018) |
Benchmarks
MPSoC research and development often compares many options. Benchmarks, such as COSMIC,[2] are developed to help such evaluations.
See also
- System on a chip, of which an MPSoC is a subtype.
- Manycore processor
- Parallel computing
- Programmable system-on-chip (PSoc)
- Hardware acceleration
References
- ^ Furber, Stephen B. (2000). ARM system-on-chip architecture. Harlow, England: Addison-Wesley. ISBN 0201675196. OCLC 44267964.
- ^ "COSMIC". www.ece.ust.hk. Retrieved 2018-10-11.
External links
Cite error: There are <ref group=nb>
tags on this page, but the references will not show without a {{reflist|group=nb}}
template (see the help page).