performed by : itamar niddam and lior motorin instructor: inna rivkin
DESCRIPTION
הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל. Technion - Israel institute of technology department of Electrical Engineering . המעבדה למערכות ספרתיות מהירות. High speed digital systems laboratory. Dynamic Hardware Reconfiguration Controlled by LINUX OS On ZYNQ . - PowerPoint PPT PresentationTRANSCRIPT
Performed by: Itamar Niddam and Lior MotorinInstructor: Inna Rivkin
High speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
הטכניון - מכון טכנולוגי לישראלהפקולטה להנדסת חשמל
Technion - Israel institute of technologydepartment of Electrical Engineering
Spring 2013סמסטר אביב
DYNAMIC HARDWARE RECONFIGURATIONCONTROLLED BY LINUX OS
ON ZYNQ
ABSTRACTHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
Standard SOPC approach• The Hardware is constant• The user can only switch between application
Task specific - SoftwareNew approach
• The user controls the software and the hardware.• Partial dynamic hardware reconfiguration by OS (Linux)• Hardware system dynamically changed & adapted to a specific application.• The hardware change is done at runtime by application & OS.
Task specific - Software & Hardware
MOTIVATION & GOALSHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
• Dynamic Hardware Accelerators is a new term that we came up with in order to state the process of changing the same specific hardware's logic for a period of time in order to accelerate different functions.
• The goal is to accelerate a regular software code on the Linux OS by using the dynamic hardware accelerators approach
using a separated to software & hardware systems.
• This solution is using the Zynq architecture, which contains a processing system of 2-CPU (ARM) and a programmable logic system. (Xilinx FPGA's).
• using our solution, we can "Dynamically" accelerate part of the software code on the processing system using the partial re-configuration technology, Which enable us to change the FPGA logic while the system is running. By that we break that balance limitation we showed , we can Increase the flexibility of the hardware and can accelerate specific tasks !
SYSTEM COMPONENTSHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
High speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
THE HARDWARE SYSTEM
THE SOFTWARE SYSTEMHigh speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
Processing System
Programming Logic
Linux Kernel
Zynq ZC-702
Xylon GPU Driver
Xylon HardwareARM CPU0
6
Linux OS applications use shared objects to invoke functions that were not compiled with the application itself.We use that concept to create SO files with the same function symbol. But different function implementation The Hardware implementation SO. Burns on-the-fly the required bit stream. And invokes the generated hardware in order to process the data.
Main App code
Software impl SO
Hardware impl SO
SOBEL FILTER• The Sobel operator is used in image processing, particularly within edge detection
algorithms. Technically, it is a discrete differentiation operator, computing an approximation of the gradient of the image intensity function.
• Mapping colors as follows:• Green -> Blue.• Blue -> Red.• Red -> Green.
INSTAGRAM FILTER
High speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
SEPIA FILTER• In photography, toning is a method of changing the color of black-and-
white photographs. The effects of these processes can be emulated with software in digital photography.
SEPIA
SECURITY FILTER• A common technique of a data filtering for security purpose.• Changes the inner representation of the picture (byte array), randomly.• Doesn’t change the picture as shown to the user (the human’s eye can’t
notice the change).
High speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
High speed digital systems laboratoryהמעבדה למערכות ספרתיות מהירות
6
FILTER ENGINE GRAPHIC AND SYSTEM SYNTHESIZED DESIGN