Spelling suggestions: "subject:"28bitstream anipulation"" "subject:"28bitstream comanipulation""
1 |
Bitstream specialisation for dynamic reconfiguration of real-time applications / Ronnie Rikus le RouxLe Roux, Ronnie Rikus January 2015 (has links)
The focus of this thesis is on specialising the configuration of a field-programmable gate array
(FPGA) to allow dynamic reconfiguration of real-time applications. The dynamic reconfiguration
of an application has numerous advantages, but due to the overhead introduced by
this process, it is only advantageous if the execution time exceeds reconfiguration time. This
implies that dynamic reconfiguration is more suited to quasi-static applications, and real-time
applications are therefore typically not reconfigured.
A method proposed in the literature to ameliorate the overhead from the configuration process is
to use a block-RAM (BRAM) based, hardware-controlled reconfiguration architecture, eliminating
the need for a processor bus by storing the configuration in localised memory. The drawback
of this architecture is the limited size of the BRAM, implying only a subset of configurations
can be stored.
The work presented in this thesis aim to address this size limitation by proposing a specialiser
capable of adapting the configuration stored in the BRAM to represent different sets of hardware.
This is done by directly manipulating the bits in the configuration using passive hardware. This
not only allows the configuration to be specialised practically immediately, but also allows this
specialiser to be device independent. By incorporating this specialiser into the BRAM-based
architecture, this study sets out to establish that it is possible to reduce the overhead of the
reconfiguration process to such an extent that dynamic reconfiguration can be used for real-time
applications.
Since the composition of the configuration is not publicly available, a method had to be found to
parse and analyse the configuration in order to map the configuration space of the device. The
approach used was to compare numerous different configurations and mapping the differences.
By analysing these differences, it was found that there is a logical relationship between the slice
coordinates and the configuration space of the device. The encoding of the lookup tables was
also determined from their initialisation parameters. This allows the configuration of any lookup
table to be changed by simply changing the corresponding bits in the configuration.
Using this proposed reconfiguration architecture, a distributed multiply-accumulate was reconi
figured and its functional density measured. The reason for selecting this specific application
is because the multiply-accumulate instruction can be found at the heart of many real-time
applications. If the functional density of the reconfigured application is comparable to those
of its static equivalent, a strong case can be made for real-time reconfiguration in general.
Functional density is an indication of the composite benefits dynamic reconfiguration obtains
above its static generic counterpart. Due to the overhead of the reconfiguration process, the
functional density of reconfigured applications is traditionally significantly lower than those of
static applications. If the functional density of the reconfigured application can rival those of
the static equivalent, the overhead from the reconfiguration process becomes negligible.
Using this metric, the functional density of the distributed multiply-accumulate was compared
for different reconfiguration implementations. It was found that the reconfiguration architecture
proposed in this thesis yields a significant improvement over other reconfiguration methods. In
fact, the functional density of this method rivalled that of its static equivalent, implying that
it is possible to dynamically reconfigure a real-time application. It was also found that the
proposed architecture reduces specialisation and reconfiguration time to such an extent that it
is possible complete the reconfiguration process within strict time constraints. Even though the
proposed method is only capable of reconfiguring the LUTs of a real-time application, this is
the first step towards allowing full reconfiguration of applications with dynamic characteristics.
The first contribution this thesis makes is a novel method to parse and analyse the configuration
of a XilinxR
VirtexR
-5 FPGA. It also successfully maps the configuration space to
the configuration data. Even though this method is applied to a specific device, it is device
independent and can easily be applied to any other FPGA. The second contribution comes from
using the information obtained from this analysis to design and implement a configuration
specialiser, capable of adapting lookup tables in real time. Lastly, the third contribution
combines this specialiser with the BRAM-based architecture to allow the reconfiguration of
applications typically not reconfigured. / PhD (Computer and Electronic Engineering), North-West University, Potchefstroom Campus, 2015
|
2 |
Bitstream specialisation for dynamic reconfiguration of real-time applications / Ronnie Rikus le RouxLe Roux, Ronnie Rikus January 2015 (has links)
The focus of this thesis is on specialising the configuration of a field-programmable gate array
(FPGA) to allow dynamic reconfiguration of real-time applications. The dynamic reconfiguration
of an application has numerous advantages, but due to the overhead introduced by
this process, it is only advantageous if the execution time exceeds reconfiguration time. This
implies that dynamic reconfiguration is more suited to quasi-static applications, and real-time
applications are therefore typically not reconfigured.
A method proposed in the literature to ameliorate the overhead from the configuration process is
to use a block-RAM (BRAM) based, hardware-controlled reconfiguration architecture, eliminating
the need for a processor bus by storing the configuration in localised memory. The drawback
of this architecture is the limited size of the BRAM, implying only a subset of configurations
can be stored.
The work presented in this thesis aim to address this size limitation by proposing a specialiser
capable of adapting the configuration stored in the BRAM to represent different sets of hardware.
This is done by directly manipulating the bits in the configuration using passive hardware. This
not only allows the configuration to be specialised practically immediately, but also allows this
specialiser to be device independent. By incorporating this specialiser into the BRAM-based
architecture, this study sets out to establish that it is possible to reduce the overhead of the
reconfiguration process to such an extent that dynamic reconfiguration can be used for real-time
applications.
Since the composition of the configuration is not publicly available, a method had to be found to
parse and analyse the configuration in order to map the configuration space of the device. The
approach used was to compare numerous different configurations and mapping the differences.
By analysing these differences, it was found that there is a logical relationship between the slice
coordinates and the configuration space of the device. The encoding of the lookup tables was
also determined from their initialisation parameters. This allows the configuration of any lookup
table to be changed by simply changing the corresponding bits in the configuration.
Using this proposed reconfiguration architecture, a distributed multiply-accumulate was reconi
figured and its functional density measured. The reason for selecting this specific application
is because the multiply-accumulate instruction can be found at the heart of many real-time
applications. If the functional density of the reconfigured application is comparable to those
of its static equivalent, a strong case can be made for real-time reconfiguration in general.
Functional density is an indication of the composite benefits dynamic reconfiguration obtains
above its static generic counterpart. Due to the overhead of the reconfiguration process, the
functional density of reconfigured applications is traditionally significantly lower than those of
static applications. If the functional density of the reconfigured application can rival those of
the static equivalent, the overhead from the reconfiguration process becomes negligible.
Using this metric, the functional density of the distributed multiply-accumulate was compared
for different reconfiguration implementations. It was found that the reconfiguration architecture
proposed in this thesis yields a significant improvement over other reconfiguration methods. In
fact, the functional density of this method rivalled that of its static equivalent, implying that
it is possible to dynamically reconfigure a real-time application. It was also found that the
proposed architecture reduces specialisation and reconfiguration time to such an extent that it
is possible complete the reconfiguration process within strict time constraints. Even though the
proposed method is only capable of reconfiguring the LUTs of a real-time application, this is
the first step towards allowing full reconfiguration of applications with dynamic characteristics.
The first contribution this thesis makes is a novel method to parse and analyse the configuration
of a XilinxR
VirtexR
-5 FPGA. It also successfully maps the configuration space to
the configuration data. Even though this method is applied to a specific device, it is device
independent and can easily be applied to any other FPGA. The second contribution comes from
using the information obtained from this analysis to design and implement a configuration
specialiser, capable of adapting lookup tables in real time. Lastly, the third contribution
combines this specialiser with the BRAM-based architecture to allow the reconfiguration of
applications typically not reconfigured. / PhD (Computer and Electronic Engineering), North-West University, Potchefstroom Campus, 2015
|
3 |
A Multi-layer Fpga Framework Supporting Autonomous Runtime Partial ReconfigurationTan, Heng 01 January 2007 (has links)
Partial reconfiguration is a unique capability provided by several Field Programmable Gate Array (FPGA) vendors recently, which involves altering part of the programmed design within an SRAM-based FPGA at run-time. In this dissertation, a Multilayer Runtime Reconfiguration Architecture (MRRA) is developed, evaluated, and refined for Autonomous Runtime Partial Reconfiguration of FPGA devices. Under the proposed MRRA paradigm, FPGA configurations can be manipulated at runtime using on-chip resources. Operations are partitioned into Logic, Translation, and Reconfiguration layers along with a standardized set of Application Programming Interfaces (APIs). At each level, resource details are encapsulated and managed for efficiency and portability during operation. An MRRA mapping theory is developed to link the general logic function and area allocation information to the device related physical configuration level data by using mathematical data structure and physical constraints. In certain scenarios, configuration bit stream data can be read and modified directly for fast operations, relying on the use of similar logic functions and common interconnection resources for communication. A corresponding logic control flow is also developed to make the entire process autonomous. Several prototype MRRA systems are developed on a Xilinx Virtex II Pro platform. The Virtex II Pro on-chip PowerPC core and block RAM are employed to manage control operations while multiple physical interfaces establish and supplement autonomous reconfiguration capabilities. Area, speed and power optimization techniques are developed based on the developed Xilinx prototype. Evaluations and analysis of these prototype and techniques are performed on a number of benchmark and hashing algorithm case studies. The results indicate that based on a variety of test benches, up to 70% reduction in the resource utilization, up to 50% improvement in power consumption, and up to 10 times increase in run-time performance are achieved using the developed architecture and approaches compared with Xilinx baseline reconfiguration flow. Finally, a Genetic Algorithm (GA) for a FPGA fault tolerance case study is evaluated as a ultimate high-level application running on this architecture. It demonstrated that this is a hardware and software infrastructure that enables an FPGA to dynamically reconfigure itself efficiently under the control of a soft microprocessor core that is instantiated within the FPGA fabric. Such a system contributes to the observed benefits of intelligent control, fast reconfiguration, and low overhead.
|
4 |
BitMaT - Bitstream Manipulation Tool for Xilinx FPGAsMorford, Casey Justin 03 January 2006 (has links)
With the introduction of partially reconfigurable FPGAs, we are now able to perform dynamic changes to hardware running on an FPGA without halting the operation of the design. Module based partial reconfiguration allows the hardware designer to create multiple hardware modules that perform different tasks and swap them in and out of designated dynamic regions on an FPGA. However, the current mainstream partial reconfiguration flow provides a limited and inefficient approach that requires a strict set of guidelines to be met. This thesis introduces BitMaT, a tool that provides the low-level bitstream manipulation as a member tool of an alternative, automated, modular partial reconfiguration flow. / Master of Science
|
Page generated in 0.0877 seconds