Content deleted Content added
m →Partial re-configuration: changed the definition of partial reconfiguration as it was basically equal to the definition of dynamic partial reconfiguration. |
Citation bot (talk | contribs) m Alter: journal, pages, isbn, page. Add: citeseerx. Removed parameters. Formatted dashes. | You can use this bot yourself. Report bugs here. | User-activated. |
||
Line 13:
''Proceedings of the IEEE Symposium on Field-Programmable Custom Computing Machines''
(FCCM '97, April 16–18, 1997), pp. 24–33.
</ref> Elixent, NGEN,<ref>{{Cite journal|last=McCaskill|first=John S.|last2=Chorongiewski|first2=Harald|last3=Mekelburg|first3=Karsten|last4=Tangen|first4=Uwe|last5=Gemm|first5=Udo|date=1994-09-01|title=NGEN — Configurable computer hardware to simulate long-time self-organization of biopolymers
==Theories==
Line 68:
This heterogeneous systems technique is used in computing research and especially in [[supercomputing]].<ref name="Voros2009">N. Voros, R. Nikolaos, A. Rosti, M. Hübner (editors): Dynamic System Reconfiguration in Heterogeneous Platforms - The MORPHEUS Approach; Springer Verlag, 2009</ref>
A 2008 paper reported speed-up factors of more than 4 orders of magnitude and energy saving factors by up to almost 4 orders of magnitude.<ref name="Tarek2008">{{cite journal |title= The promise of high-performance reconfigurable computing |authors= Tarek El-Ghazawi |journal= IEEE Computer |volume= 41 |number=2 |pages= 69–76 |date= February 2008 |doi= 10.1109/MC.2008.65 |display-authors=etal|citeseerx= 10.1.1.208.4031 }}</ref>
Some supercomputer firms offer heterogeneous processing blocks including FPGAs as accelerators.{{citation needed |date= August 2011}}
One research area is the twin-paradigm programming tool flow productivity obtained for such heterogeneous systems.<ref name="Esam2009">{{cite journal |author1= Esam El-Araby |author2= Ivan Gonzalez |author3= Tarek El-Ghazawi |title= Exploiting Partial Runtime Reconfiguration for High-Performance Reconfigurable Computing |journal= ACM Transactions on Reconfigurable Technology and Systems |volume= 1 |number= 4 |date= January 2009 |doi= 10.1145/1462586.1462590 |pages=1–23}}</ref>
Line 123:
=== Intel ===
[[Intel]]<ref name="intel_altera">{{cite web |url=https://newsroom.intel.com/news-releases/intel-completes-acquisition-of-altera/ |title=Intel completes acquisition of Altera |access-date=15 November 2016}}</ref> supports partial reconfiguration of their FPGA devices on 28 nm devices such as Stratix V,<ref name="stratixv_pr">{{cite web |url=https://www.altera.com/products/fpga/features/stxv-part-reconfig.html |title=Stratix V FPGAs: Ultimate Flexibility Through Partial and Dynamic Reconfiguration |access-date=15 November 2016}}</ref> and on the 20 nm Arria 10 devices.<ref name="arria10_pr">{{cite web |url=https://www.altera.com/products/design-software/fpga-design/quartus-prime/features.html |title=Intel Quartus Prime Software Productivity Tools and Features |access-date=15 November 2016}}</ref> The Intel FPGA partial reconfiguration flow for Arria 10 is based on the hierarchical design methodology in the Quartus Prime Pro software where users create physical partitions of the FPGA that can be reconfigured<ref name="arria10_pr_docs">{{cite web |url=https://www.altera.com/en_US/pdfs/literature/hb/qts/qts-qps-5v1.pdf |title=Quartus Prime Standard Edition Handbook Volume 1: Design and Synthesis |publisher=Intel
== Comparison of systems ==
Line 149:
== Challenges for operating systems ==
One of the key challenges for reconfigurable computing is to enable higher design productivity and a more easy way to use reconfigurable computing systems for users that are unfamiliar with the underlying concepts. One way of doing this is to provide standardization and abstraction, usually supported and enforced by an operating system.<ref name=":0">{{Cite journal|last=Eckert|first=Marcel|last2=Meyer|first2=Dominik|last3=Haase|first3=Jan|last4=Klauer|first4=Bernd|date=2016-11-30|title=Operating System Concepts for Reconfigurable Computing: Review and Survey
One of the major tasks of an operating system is to hide the hardware and present programs (and their programmers) with nice, clean, elegant, and consistent abstractions to work with instead. In other words, the two main tasks of an operating system are abstraction and resource management.<ref name=":0" />
|