Top Banner
RUN-TIME, FREQUENTLY, NON-FREQUENTLY RECONFIGURABLE SYSTEM & RAPID PROTOTYPING Under the Guidance of: Prof. (Dr.) Manoj S. Nagmode Presented by: Mr. Nikhil Mistry & Mr. Sudhanshu A Technical Seminar on: Department of E & TC, MITCOE
18

Run time, frequently, non-frequently reconfigurable system &

Aug 07, 2015

Download

Engineering

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Run time, frequently, non-frequently reconfigurable system &

RUN-TIME, FREQUENTLY, NON-FREQUENTLY RECONFIGURABLE SYSTEM & RAPID PROTOTYPING

Under the Guidance of:

Prof. (Dr.) Manoj S. Nagmode

Presented by:

Mr. Nikhil Mistry & Mr. Sudhanshu

A Technical Seminar on:

Department of E & TC, MITCOE

Page 2: Run time, frequently, non-frequently reconfigurable system &

AGENDA

Rapid Prototyping Brief Overview Advantages

Non-Frequently Reconfigurable Systems Frequently Reconfigurable Systems Static & Dynamic(Run-time) Reconfigurable Systems Run time Reconfigurable Systems

Architecture Flow Chart of Operation

Previous Year University Questions

Department of E & TC, MITCOE

Page 3: Run time, frequently, non-frequently reconfigurable system &

Department of E & TC, MITCOE

Reconfigurable Systems

Rapid prototyping

Non-frequently reconfigurable

systems

Frequently reconfigurable

systems

Reconfigurable devices (RD) are usually used in three different ways:

Page 4: Run time, frequently, non-frequently reconfigurable system &

RAPID PROTOTYPING

The reconfigurable device is used as an Emulator for another digital device, usually an ASIC.

Emulator in Embedded Systems refers to Hardware/Software that duplicates the functions of one Embedded System(The Guest) in another Embedded System(The Host), different from first one, so that the Emulated Behaviour closely resembles the behaviour of the Real system.

Thus, in Rapid Prototyping reconfigurable device is only reconfigured to emulate a new implementation of the ASIC device. Department of E & TC, MITCOE

Page 5: Run time, frequently, non-frequently reconfigurable system &

During the development of an ASIC, errors discovered after the production mean enormous loss because the produced pieces become either unusable or a great adaptation effort must be spent for the deployment.

The emulation process allows to functionally test the correctness of the ASIC device to be produced in real operating and environmental conditions, before production.

The reconfigurable device can be used several times to implement different versions of the final product until an error-free state.

Advantage of Rapid Prototyping:

Department of E & TC, MITCOE

Page 6: Run time, frequently, non-frequently reconfigurable system &

The APTIX-System Explorer and the ITALTEL Flexbench systems are two examples of emulation platfors.

Examples of Rapid Prototyping Systems

APTIX-System Explorer ITALTEL Flexbench systems

Department of E & TC, MITCOE

Page 7: Run time, frequently, non-frequently reconfigurable system &

NON-FREQUENTLY RECONFIGURABLE SYSTEMS

The Reconfigurable device is integrated in a system where it can used as an application-specific processor.

Such systems are used as prototyping platform, but can be used as running environment as well.

The reconfiguration is used for testing and initialization at start-up and for upgrading purpose.

The device configuration is usually stored in an EEPROM of Flash from which it is downloaded at start-up to reconfigure the device.

No configuration happens during operation.

Examples are: The RABBIT System, the Celoxica, RC100, RC200, RC300, the

Nallatech BenADIC.Department of E & TC, MITCOE

Page 8: Run time, frequently, non-frequently reconfigurable system &

FREQUENTLY RECONFIGURABLE SYSTEMS In this category of Reconfigurable Devices, the devices are

frequently reconfigured. These systems are usually coupled with a host processor, which is

used to reconfigure the device and control the complete system. RD is used as an accelerator for time critical parts of applications. The host processor accesses the RD using function calls. The Reconfigurable part is usually a PCI board attached to the PCI-

bus. The communication is useful for configuration and data exchange.

Examples are: The Raptor 2000, the Celoxica RC 1000, RC2000, the Ballynuey,Nallatech Ballynuey. Department of E & TC, MITCOE

Page 9: Run time, frequently, non-frequently reconfigurable system &

Reconfigurable devices

Compile-time reconfiguration

Run-time reconfiguration

Depending on the time at which the reconfiguration sequence are defined, Reconfigurable Devices can be classified as:

A. Static / Compile-time Reconfigurable DevicesB. Dynamic/ Run-time Reconfigurable Devices

Department of E & TC, MITCOE

Page 10: Run time, frequently, non-frequently reconfigurable system &

COMPILE-TIME RECONFIGURATION

The Computation and Configuration sequences as well as the Data exchange are defined at compile time and never change during a computation.

This category encounters the rapid prototyping systems, the non-frequently reconfigurable systems as well as some frequently reconfigurable systems.

Department of E & TC, MITCOE

Page 11: Run time, frequently, non-frequently reconfigurable system &

RUN-TIME RECONFIGURATION

The Computation and Configuration sequences are not known at compile time.

Request to implement a given task is known at run-time and should be handled dynamically.

Some non-frequently reconfigurable systems as well as most frequently reconfigurable systems belong to this category.

Department of E & TC, MITCOE

Page 12: Run time, frequently, non-frequently reconfigurable system &

Department of E & TC, MITCOE

Page 13: Run time, frequently, non-frequently reconfigurable system &

RUN TIME RECONFIGURABLE SYSTEM : ARCHITECTURE

Department of E & TC, MITCOE

Page 14: Run time, frequently, non-frequently reconfigurable system &

RUN-TIME RECONFIGURATION ARCHITECTURE

The management of the reconfigurable device is usually done by a scheduler and a placer that can be implemented as part of an operating system running on a processor .

The processor can either reside inside or outside the reconfigurable chip.

The scheduler manages the tasks and decides when a task should be executed.

The tasks that are available as configuration data in a database are characterized through their bounding box and their run-time. The bounding box defines the area that a task occupies on the device.

Department of E & TC, MITCOE

Page 15: Run time, frequently, non-frequently reconfigurable system &

RUN-TIME RECONFIGURATION ARCHITECTURE(CONTD..)

The scheduler determines which task should be executed on the RPU and then gives the task to the placer that will try to place it on the device, i.e. allocate a set of resources for the implementation of that task.

If the placer is not able to find a site for the new task, then it will be sent back to the scheduler that can then decide to send it later and to send another task to the placer.

In this case, we say that the task is rejected.

Department of E & TC, MITCOE

Page 16: Run time, frequently, non-frequently reconfigurable system &

FLOWCHART OF OPERATION

Department of E & TC, MITCOE

Page 17: Run time, frequently, non-frequently reconfigurable system &

The host CPU is used for device configuration and data transfer.

Usually, the reconfigurable device and the host processor communicates through a bus that is used for the data transfer between the processor and the reconfigurable device

The RPU acts like a coprocessor with varying instruction sets accessible by the processor in a function call.

At the beginning of a computation, the host processor configures the reconfigurable device.2

Then it downloads the segment of the data to be processed by the RPU3 and give the start signal to the RPU. The host and the RPU can then process in parallel on their segments of data.

Department of E & TC, MITCOE

Page 18: Run time, frequently, non-frequently reconfigurable system &

At the end of its computation, the host reads the finish signal of the RPU. At this point, the data (computation result) can be collected from the RPU memory by the processor.

The RPU can also send the data directly to an external sink. In the computation flow presented above, the RPU is

configured only once. However, in frequently reconfigured systems, several configurations might be done.

If the RPU has to be configured more than once, then the body of the while loop must be run again according to the number of reconfigurations to be done before.

Department of E & TC, MITCOE