ELG6163_Burton

Download Report

Transcript ELG6163_Burton

Department of Systems and Computer Engineering
Digital Signal Processing Laboratory
Multiprocessors for DSP
SYSC5603 Digital Signal Processing
Microprocessors, Software and
Applications
Trevor Burton
4/6/2016
Department of Systems and Computer Engineering
Digital Signal Processing Laboratory
Outline
 Why Multiprocessor Systems?
 Chip Multiprocessor (CMP) Architectures
 CMP Advantages & Disadvantages
 Current CMP Solutions
 Tools for Designing and Simulation CMPs
 Summary
Trevor Burton
4/6/2016
Department of Systems and Computer Engineering
Digital Signal Processing Laboratory
Why Multiprocessor Systems?
 Single-core microprocessor performance increases are
beginning to slow [1] due to:
 Increasing power consumption (>100 W)
 Increasing heat dissipation
 Diminishing performance gains from ILP & TLP [2]
 As a result manufactures are turning to a multi-core
microprocessor approach
 Multiple smaller energy efficient processing cores are
integrated onto a single chip
 Improves overall performance by performing more work
concurrently
Trevor Burton
4/6/2016
Department of Systems and Computer Engineering
Digital Signal Processing Laboratory
CMP Architectures
 Two general types of multi-core or chip multiprocessor
(CMP) architectures
 Homogeneous CMPs – all processing elements (PEs) are the
same
 Heterogeneous CMPs – comprised of different PEs
 Homogenous dual-core processors for PCs are now
available from all major manufactures
 Heterogeneous CMPs are available in the form of
multiprocessor systems-on-chips (MPSoCs)
Trevor Burton
4/6/2016
Department of Systems and Computer Engineering
Digital Signal Processing Laboratory
Homogenous CMP - Quad-SHARC DSP
Quad-SHARC Functional Diagram
Core ADSP-21060 SHARC Functional Diagram
[3]
[3]
Trevor Burton
4/6/2016
Department of Systems and Computer Engineering
Digital Signal Processing Laboratory
Heterogeneous CMP – Cell BE
Cell Broadband Engine Block Diagram
[4]
Trevor Burton
4/6/2016
Department of Systems and Computer Engineering
Digital Signal Processing Laboratory
CMP Advantages
 CMPs have several advantages over single processor
solutions
 Energy and silicon area efficiency
• By Incorporating smaller less complex cores onto a single
chip
• Dynamically switching between cores and powering down
unused cores [5]
 Increased throughput performance by exploiting parallelism
• Multiple computing resources can take better advantage of
instruction, thread, and process level parallelism
Trevor Burton
4/6/2016
Department of Systems and Computer Engineering
Digital Signal Processing Laboratory
CMP Disadvantages
 Poorer performance in single task situations
 Need to have software that can be decomposed into multiple
threads in order to take full advantage of CMP resources
 Programming CMPs is inherently more difficult due to:
 Software needing to be designed with multiple threads
 Parallel programming and its associated issues such as shared
memory access and message passing
 Large number of possibly different types of PEs
Trevor Burton
4/6/2016
Department of Systems and Computer Engineering
Digital Signal Processing Laboratory
Current CMP Solutions
 Many different types of CMP solutions exist today and
choosing one depends on the intended application
 In the desktop computing industry all major manufactures now
offer multi-core solutions
 Manufactures of PDSPs also offer multi-core versions of their
products
 FPGA manufactures offer programmable devices with
immersed microprocessor cores
Trevor Burton
4/6/2016
Department of Systems and Computer Engineering
Digital Signal Processing Laboratory
Design and Simulation Tools
 Of the multi-core solutions that exist none offer support
for a multi-core design from scratch
 Instead customers decide on a multi-core platform from a
specific vendor and generally use the tools available from that
vendor to program, test, and verify their multi-core solution
 One solution for the design and simulation of multiprocessor systems from the ground up is offered by
Cmpware Inc.
 They offer a configurable multi-processor development kit
(CMP-DK) which allows for the design, programming, and
testing of multi-processor systems
Trevor Burton
4/6/2016
Department of Systems and Computer Engineering
Digital Signal Processing Laboratory
Design and Simulation Tools – The
CMP-DK
 Their development environment lets processors and
their interconnection network be quickly and simply
defined [6]
 Existing processor cores along with their associated tools,
libraries, and software can be used [6]
 Also, users are able to specify their own custom processor
architectures and interconnect networks or modify an existing
architecture as needed.
Trevor Burton
4/6/2016
Department of Systems and Computer Engineering
Digital Signal Processing Laboratory
Summary
 The CMP architecture is now the architecture of choice
for semiconductor manufactures
 CMPs are more area and energy efficient than single
processor solutions
 CMPs achieve greater throughput than single processor
solutions as more work can be done concurrently
 Custom multi-processor systems can now be designed
and simulated from the ground up using software
solutions from several companies
Trevor Burton
4/6/2016
Department of Systems and Computer Engineering
Digital Signal Processing Laboratory
References
[1]
[2]
[3]
[4]
Trevor Burton
D. Geer, “Chip makers turn to multicore processors,”
IEEE Computer, vol. 38, no. 5, pp. 11-13, 2005.
L. Hammond, B. Hubbert, M. Siu, M. Prabhu, M.
Chen and K. Olukotun, “The Stanford Hydra CMP”,
IEEE Micro, vol. 20, no. 2, pp. 71-84, Mar./Apr. 2000.
AD14060 Data Sheets. (2004). Analog Devices.
Norwood, MA. [Online]. Available:
http://www.analog.com/UploadedFiles/Data_Sheets/
4003696AD14060_L_b.pdf
Cell Broadband Engine Architecture and its first
implementation. [Online]. Available: http://www128.ibm.com/developerworks/power/library/pacellperf/#23ref1
4/6/2016
Department of Systems and Computer Engineering
Digital Signal Processing Laboratory
References
[5]
[6]
Trevor Burton
R. Kumar, D. M. Tullsen, N.P. Jouppi, and P.
Ranganathan, “Heterogeneous Chip
Multiprocessors,” IEEE Computer, vol. 38, no. 11,
pp. 32-38, 2005.
S. A. Guccione. (2005, April). Programming
Configurable Multiprocessors. Presented at the 12th
Reconfigurable Architectures Workshop. [Online].
Available:
http://www.cmpware.com/Papers/RAW2005/Cmpwar
e_RAW_2005.pdf
4/6/2016