220 likes | 387 Views
Reconfigurable computing. Papers: [Goldstein et al] PipeRench: A Coprocessor for Streaming Multimedia Acceleration [Razdan & Smith] PRISC: A High-Performance Microarchitecture with PFUs [Cardoso & Vestias] Architectures and Compilers to Support Reconfigurable Computing. Terminology.
E N D
Reconfigurable computing Papers: [Goldstein et al] PipeRench: A Coprocessor for Streaming Multimedia Acceleration [Razdan & Smith] PRISC: A High-Performance Microarchitecture with PFUs [Cardoso & Vestias] Architectures and Compilers to Support Reconfigurable Computing
Terminology FPGA Field Programmable Gate Array PFU Programmable Functional Unit ISA Instruction Set Architecture PE Processing Element PRISC PRogrammable Instruction Set Computer RPU Reconfigurable Processing Unit
Challenge 1 Workloads submitted to processorsinclude more and more simple calculationson very large quantities of data. Multimedia applications, video streaming…
Challenge 1 Assumptions of general purpose processing: The processor reads more instructions than data elements processors are optimized for high instructions bandwidth (pre-fetching, branch prediction) Data comes in fixed sized, wide words 32 or 64 bits are not uncommon
Challenge 1 Characteristics of data stream processing : Data comes in large quantities of variable, small width elements 12 bits, 7 bits… A single transformation is to be applied to all the data elements That transformation is domain specific and is likely torequire several instructions on a general-purpose processor
Challenge 2 Performance critical applicationsoften rely on a reduced number of functions being executed frequently Can we support those in hardware?
Reconfigurable computing Papers: [Goldstein et al] PipeRench Challenge 1 [Razdan & Smith] PRISC Challenge 2 [Cardoso & Vestias] Challenge 2
Idea Design hardware that can be configuredat run time to support: Complex transformations of datain a single clock cycle Variable data widths (challenge 1)
Approaching the Solution Goldstein
Approaching the Solution Cardoso
Designing the Solution Goldsteinattached processor
Designing the Solution Razdnfunctional unit
Designing the Solution Razdnfunctional unit
Designing the Solution Cardosofunctional unit
Hardware Costs Cardoso
Impact on Compiling Razdn
So, why don’t I have one yet? Shortcomings of FPGAs [Goldstein et al]: Configuration time – 100s of microsecs to 100s of millisecs Forward compatibility – must be redesigned every generation Compilation time – synthesis, placement and routing Logic granularity – designed to replace random logic Hard constraints – the hardware image must fit
PRISC performance Applicability and application speedup
PipeRench performance Performance on benchmark kernels:
PipeRench performance Performance on applications:
Conclusion PipeRench PRISC