maegan
Uploaded by
9 SLIDES
233 VUES
90LIKES

Reconfigurable Architectures

DESCRIPTION

This article explores the concept of granularity in reconfigurable systems, which refers to the abstraction level used for device configuration. Granularity can range from fine-grained (Boolean-level representation, such as FPGAs) to coarse-grained (instruction-level and functional-level structures). Each level affects efficiency and device capabilities differently, depending on application needs. The discussion includes various architectures, their efficiencies, and practical implications in complex computations, as well as insights into hybrid devices that integrate multiple levels of granularity for optimal performance.

1 / 9

Télécharger la présentation

Reconfigurable Architectures

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Reconfigurable Architectures

  2. Granularity of Reconfigurable Systems • Granularity: • The abstraction level used to configure the device. • May use a • Boolean-level, • instruction-level, • function-level, • process-level representation.

  3. Granularity of Reconfigurable Systems • Granularity: • Proportional to the length of a configuration: • Fine/low-grain: long configuration • Course grain (high-level granularity): short configuration • Fine-grain (Boolean-level) architecture: • FPGA: • Primary computational elements: limited-input LUTs • Suitable for simple to complex Boolean functions. • Inefficient for complex functions like multipliers • Instruction-level: • Has computational units that perform instruction-level operations • Units vary from byte-width to word-width (32-bit) datapath operations. • Units rarely have states: • Read from registers and written to registers • Efficient for performing instructions but inefficient at performing Boolean operations.

  4. Granularity • Freedom of device: • Instruction-level granularity only allows a limited number of register locations and small number of operations (on those locations) • Lower granularity level allows more locations and different complex customized FUs. • Can implement complex functions by a number of LUTs. • Efficiency: • The more closely the application operation is matched to the granularity, the more efficient the device will execute. • Example: • DSP application needs a lot of word-size add and mult. •  instruction-level granularity. • Application with a lot of Boolean operations: •  Boolean-level granularity.

  5. Granularity • Functional-level: • Units are complex multi-cycle operations • Extensible processors with customized instructions. • Process-level: • Extremely complex processes which often take 100-1000 cycles to complete. • Example: • A cryptography device which decides on the algorithm based on the input key.

  6. Hybrid Devices • Recent commercial FPGA devices with multiple levels of granularity: • LUTs, • Dedicated adders/multipliers, • DSP units.

  7. Granularity • Course-grained reconfigurable devices (rDPA) • Fine-grained reconfigurable devices (FPGA) [Hartenstein07]

  8. Area Efficiency

  9. References [Hartenstein07] Hartenstein, “Basics of Reconfigurable Computing,” S. P. J. Henkel, Ed. New York: Springer-Verlag, 2007. [Kastner04] Kastner, Kaplan, Sarrafzadeh, “Synthesis techniques and optimizations for reconfigurable systems,” Kluwer, 2004.

More Related