Title: Multi-processor%20SoCs
1Multi-processor SoCs
2Why multiprocessor systems-on-chips
- Single processors may be sufficient for
low-performance applications that are typical of
early microcontrollers, but an increasing number
of applications require multiprocessors to meet
their performance goals. - Multiprocessor systems-on-chips (MPSoC) are one
of the key applications of VLSL technology today. - MPSoC are increasingly used to build complex
integrated system. A MPSoC is more than just a
rack of processors shrunk down to a single chip.
3Introduce Multiprocessor
- Definition Multiprocessor is Parallel processors
with a single shared address. - Microprocessor is now the most cost-effective
processor. - Multiprocessors have the highest absolute
performance-faster than the fastest uniprocessor.
4Several conceptions
- Parallel processing program a single program
that runs on multiple processors simultaneously. - Cluster a set of computers connected over a
local area network (LAN) that function as a
single large multiprocessor. - Shared memory a memory for a parallel processor
with a single address space, implying implicit
communication with loads and stores.
5Multiprocessosrs communication mode
- Signal address offer the programmer a single
memory address space that all processors share.
Processors communicate through shared variables
in memory, with all processors capable of
accessing any memory location via loads and
stores. - Message passing Communicating between multiple
processors by explicitly sending and receiving
information.
6Two types single address access
- Uniform momory access multiprocessors (or
symmetric multiprocessors) which takes the same
time to access main memory no matter which
processor requests it and no matter which word is
requested. - Nonuniform memory access multiprocessors some
memory accesses are faster than others depending
on which processor asks for which word. - For nonuniform memory access machines can scale
to larger sizes and hence are potentially higher
performance.
7Two basic constructed organizations
- Processors connected by a single bus
- Processors connected by a network
Options in communication style and physical
connection for multiprocessors as the number of
processors varies.
8Multiprocessors connected by a single bus
Typical size is between 2 and 32 processors
Coche coherency consistency in the value of data
between the versions In the caches of several
processors.
9Multiprocessors connected by a network
Note compare with last one, the multiprocessor
connection is no longer Between memory and the
processor.
10Multiprocessors Programming
- Why is it difficult to write multiprocessor
programs that are fast, especially as the number
of processors increases. - Because of the programming difficulty,
most parallel processing success stories are a
result of software wizards developing a parallel
subsystem that presents a sequential interface. - you must get good performance and
efficiency from the parallel program on a
multiprocessor - Why it is difficult to write parallel processing
programs is that the programmer must know a good
deal about the hardware.
11System-on-chips designs constraints
- Not simply high computation rates, but real-time
performance that meets deadlines. - Low power or energy consumption.
- Low cost.
12Concept of MPSoC
- Multiprocessor system on chips (MPSoC) are not
chip multiprocessors. - Chip multiprocessors are components that take
advantage of increased transistor densities to
put more processors on a single chip, but they
dont try to leverage application needs - MPSoC are custom architectures that balance the
constraints of VLSI technology with an
applications needs.
13Memory system of MPSoC
- Heterogeneous memory systems some blocks of
memory may be accessible by only one or a few
processors. Heterogenous memory systems are
harder to program because the programmer must
keep in mind what processors can access what
memory blocks - Irregular memory structures are often necessary
in MPSoCs. One reason that designers resort to
specialized memory is to support real-time
performance.
14Challenges and Opportunities
- MPSoCs combine the difficulties of building
complex hardware systems and complex software
systems. - Methodology is critical to MPSoC design.
Methodologies that work offer many advantages.
They decrease the time it takes to design a
system they also make it easier to predict how
long the design will take and how many resources
it will require. Methodology also codify
techniques for improving performance and power
consumption that developers can apply to many
different designs. - Methodology will necessarily be a moving target
for the next decade.
15Challenges and Opportunities
- MPSoC hardware architectures present challenges
in all aspects of the multiprocessor processing
elements, memory, and interconnects. - Configurable processors with customized
instruction sets are one way to improve the
characteristics of processing elements hardware/
software codesign of accelerators is another
technique.
16Future work
- A critical question in MPSoC architectures is the
balance between programmability and efficiency.
It is more difficult to program multiprocessors
than uniprocessors, and it is more difficult to
program heterogeneous multiprocessors than
homogeneous multiprocessors. - Hardware/ software interface codesign.
17Question?