Characterization Presentation Neural Network Implementation On FPGA Supervisor: Chen Koren Maria Nemets 309326767 Maxim Zavodchik 310623772.

Slides:



Advertisements
Similar presentations
Nios Multi Processor Ethernet Embedded Platform Final Presentation
Advertisements

© 2003 Xilinx, Inc. All Rights Reserved Course Wrap Up DSP Design Flow.
1 Neural networks. Neural networks are made up of many artificial neurons. Each input into the neuron has its own weight associated with it illustrated.
Sumitha Ajith Saicharan Bandarupalli Mahesh Borgaonkar.
Neural NetworksNN 11 Neural Networks Teacher: Elena Marchiori R4.47 Assistant: Kees Jong S2.22
Handwritten Character Recognition Using Artificial Neural Networks Shimie Atkins & Daniel Marco Supervisor: Johanan Erez Technion - Israel Institute of.
Mid semester Presentation Data Packages Generator & Flow Management Data Packages Generator & Flow Management Data Packages Generator & Flow Management.
1 Performed By: Khaskin Luba Einhorn Raziel Einhorn Raziel Instructor: Rivkin Ina Spring 2004 Spring 2004 Virtex II-Pro Dynamical Test Application Part.
Presenting: Itai Avron Supervisor: Chen Koren Final Presentation Spring 2005 Implementation of Artificial Intelligence System on FPGA.
Performed by: Ariel Wolf & Elad Bichman Instructor: Yuri Dolgin המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי.
הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion - Israel institute of technology department of Electrical Engineering Virtex II-PRO Dynamical.
Implementation of neuronetwork system on FPGA (characterization presentation) supervisor: Karina Odinaev Vyacheslav Yushin Igor Derzhavets Winter 2007.
Presenting: Itai Avron Supervisor: Chen Koren Characterization Presentation Spring 2005 Implementation of Artificial Intelligence System on FPGA.
Reliable Data Storage using Reed Solomon Code Supervised by: Isaschar (Zigi) Walter Performed by: Ilan Rosenfeld, Moshe Karl Spring 2004 Midterm Presentation.
Technion Digital Lab Project Xilinx ML310 board based on VirtexII-PRO programmable device Students: Tsimerman Igor Firdman Leonid Firdman Leonid.
Final Presentation Neural Network Implementation On FPGA Supervisor: Chen Koren Maria Nemets Maxim Zavodchik
Characterization Presentation Neural Network Implementation On FPGA Supervisor: Chen Koren Maria Nemets Maxim Zavodchik
Presenting: Itai Avron Supervisor: Chen Koren Mid Semester Presentation Spring 2005 Implementation of Artificial Intelligence System on FPGA.
הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion - Israel institute of technology department of Electrical Engineering Virtex II-PRO Dynamical.
Technion – Israel Institute of Technology Department of Electrical Engineering High Speed Digital Systems Lab Written by: Haim Natan Benny Pano Supervisor:
Neural Networks. Background - Neural Networks can be : Biological - Biological models Artificial - Artificial models - Desire to produce artificial systems.
FPGA Based Fuzzy Logic Controller for Semi- Active Suspensions Aws Abu-Khudhair.
Juanjo Noguera Xilinx Research Labs Dublin, Ireland Ahmed Al-Wattar Irwin O. Irwin O. Kennedy Alcatel-Lucent Dublin, Ireland.
Viterbi Decoder Project Alon weinberg, Dan Elran Supervisors: Emilia Burlak, Elisha Ulmer.
Artificial Neural Networks
Student : Andrey Kuyel Supervised by Mony Orbach Spring 2011 Final Presentation High speed digital systems laboratory High-Throughput FFT Technion - Israel.
Presentation on Neural Networks.. Basics Of Neural Networks Neural networks refers to a connectionist model that simulates the biophysical information.
Matrix Multiplication on FPGA Final presentation One semester – winter 2014/15 By : Dana Abergel and Alex Fonariov Supervisor : Mony Orbach High Speed.
Pinewood Derby Timing System Using a Line-Scan Camera Rob Ostrye Class of 2006 Prof. Rudko.
Artificial Neural Nets and AI Connectionism Sub symbolic reasoning.
IE 585 Introduction to Neural Networks. 2 Modeling Continuum Unarticulated Wisdom Articulated Qualitative Models Theoretic (First Principles) Models Empirical.
Explorations in Neural Networks Tianhui Cai Period 3.
Research on Reconfigurable Computing Using Impulse C Carmen Li Shen Mentor: Dr. Russell Duren February 1, 2008.
High-Level Interconnect Architectures for FPGAs Nick Barrow-Williams.
VHDL Project Specification Naser Mohammadzadeh. Schedule  due date: Tir 18 th 2.
PROCStar III Performance Charactarization Instructor : Ina Rivkin Performed by: Idan Steinberg Evgeni Riaboy Semestrial Project Winter 2010.
1 Abstract & Main Goal המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory The focus of this project was the creation of an analyzing device.
© 2004 Xilinx, Inc. All Rights Reserved Implemented by : Alon Ben Shalom Yoni Landau Project supervised by: Mony Orbach High speed digital systems laboratory.
1 Implementation in Hardware of Video Processing Algorithm Performed by: Yony Dekell & Tsion Bublil Supervisor : Mike Sumszyk SPRING 2008 High Speed Digital.
StrideBV: Single chip 400G+ packet classification Author: Thilan Ganegedara, Viktor K. Prasanna Publisher: HPSR 2012 Presenter: Chun-Sheng Hsueh Date:
1 הפקולטה להנדסת חשמל הפקולטה להנדסת חשמל Department of Electrical Engineering הטכניון - מכון טכנולוגי לישראל Technion - Israel Institute of Technology.
Final Presentation Final Presentation OFDM implementation and performance test Performed by: Tomer Ben Oz Ariel Shleifer Guided by: Mony Orbach Duration:
A Monte Carlo Simulation Accelerator using FPGA Devices Final Year project : LHW0304 Ng Kin Fung && Ng Kwok Tung Supervisor : Professor LEONG, Heng Wai.
Wang Chen, Dr. Miriam Leeser, Dr. Carey Rappaport Goal Speedup 3D Finite-Difference Time-Domain.
Picture Manipulation using Hardware Presents by- Uri Tsipin & Ran Mizrahi Supervisor– Moshe Porian Characterization presentation Dual-semester project.
Spatiotemporal Saliency Map of a Video Sequence in FPGA hardware David Boland Acknowledgements: Professor Peter Cheung Mr Yang Liu.
A Programmable Single Chip Digital Signal Processing Engine MAPLD 2005 Paul Chiang, MathStar Inc. Pius Ng, Apache Design Solutions.
Menu Navigation Presented by: Tzahi Ezra Advisors: Moshe Porian Netanel Yamin One semester project Project initiation: NOV 2014 PROJECT’S MID PRESENTATION.
Generic SOC Architecture for Convolutional Neural Networks CDR By: Merav Natanson & Yotam Platner Supervisor: Guy Revach HSDSL Lab, Technion.
Essential components of the implementation are:  Formation of the network and weight initialization routine  Pixel analysis of images for symbol detection.
Neural Networks. Background - Neural Networks can be : Biological - Biological models Artificial - Artificial models - Desire to produce artificial systems.
Internal Logic Analyzer Characterization presentation By: Moran Katz and Zvika Pery Mentor: Moshe Porian Dual-semester project Spring 2012.
Machine Learning Artificial Neural Networks MPλ ∀ Stergiou Theodoros 1.
A Presentation on Adaptive Neuro-Fuzzy Inference System using Particle Swarm Optimization and it’s Application By Sumanta Kundu (En.R.No.
Neural networks.
Backprojection Project Update January 2002
Hiba Tariq School of Engineering
ANN-based program for Tablet PC character recognition
CSE 473 Introduction to Artificial Intelligence Neural Networks
What is an ANN ? The inventor of the first neuro computer, Dr. Robert defines a neural network as,A human brain like system consisting of a large number.
FUNDAMENTAL CONCEPT OF ARTIFICIAL NETWORKS
AT91RM9200 Boot strategies This training module describes the boot strategies on the AT91RM9200 including the internal Boot ROM and the U-Boot program.
Paul D. Reynolds Russell W. Duren Matthew L. Trumbo Robert J. Marks II
XOR problem Input 2 Input 1
Face Recognition with Neural Networks
Optimization for Fully Connected Neural Network for FPGA application
The use of Neural Networks to schedule flow-shop with dynamic job arrival ‘A Multi-Neural Network Learning for lot Sizing and Sequencing on a Flow-Shop’
Final Project presentation
Artificial Neural Networks
♪ Embedded System Design: Synthesizing Music Using Programmable Logic
Presentation transcript:

Characterization Presentation Neural Network Implementation On FPGA Supervisor: Chen Koren Maria Nemets Maxim Zavodchik

Introduction  Neural Network is a sort of artificial intelligence  NN is an imitation of a human body  A NN acquires knowledge through learning.  NN can learn in real time  Applications:  Optical Characters Recognition  Voice Recognition  Financial Forecasting  Medical Diagnosis

Theoretical Background Neuron Model (Perceptron): Neuron Model (Perceptron): The single neuron is a device that implements the function Activate function – some bounded continuously rising function (for example, sigmoid). X is an input vector W is a weight vector  Knowledge is stored within inter-neuron connection strengths

Learning of the neural network   Popular implementation is a multilayer feed forward network Neural network learns from examples Neural network learns from examples Learning is changing weights to implement the desired classification function Learning is changing weights to implement the desired classification function There are algorithms which change the weights in the network There are algorithms which change the weights in the network We will use Back Propagation learning algorithm We will use Back Propagation learning algorithm Minimizes the difference between output and training example. Minimizes the difference between output and training example. Weight changes depend on the units in the layer below. Weight changes depend on the units in the layer below.

Project Objectives Implementing Neural Network on FPGA Implementing Neural Network on FPGA  Creating modular design  Implementing in software (Matlab)  Creating PC Interface Performance Analyze: Performance Analyze:  Area on chip  Interconnections  Speed vs. software implementation  Frequency  Cost

Development Stages Choosing application: 0-9 Digits Recognition Choosing application: 0-9 Digits Recognition Implementing a single neuron in VHDL Implementing a single neuron in VHDL Determining network structure Determining network structure Building NN in Matlab, training and testing it Building NN in Matlab, training and testing it Determining weights length and resolution Determining weights length and resolution Choosing the proper hardware: FPGA and Memory Choosing the proper hardware: FPGA and Memory Planning FSM controller Planning FSM controller Implementing the NN in VHDL Implementing the NN in VHDL Simulation and Synthesis Simulation and Synthesis Performance analysis: hardware vs. software Performance analysis: hardware vs. software

System Interface Inputs Inputs  Binary image ( 8x8 pixels )  Weights – The size will be determined  Getting inputs by blocks Outputs Outputs  Vector size of 4 bits coding the digit or indicating a failure

Neuron Architecture Multipliers for calculating Multipliers for calculating Adder for calculating the Adder for calculating the ROM implementing Activation function ROM implementing Activation function SRAM saving the weights SRAM saving the weights SRAM saving the input image SRAM saving the input image FSM Controller FSM Controller

Neuron Architecture

Hardware Requirements Memec Development Board Memec Development Board Virtex II Pro FPGA Virtex II Pro FPGA 44 18x18-bit Multipliers 44 18x18-bit Multipliers 88 KB of on-chip memory 88 KB of on-chip memory Power PC 4.05 CPU core Power PC 4.05 CPU core 32 MB of SDRAM 32 MB of SDRAM 100MHz & 125 MHz clocks 100MHz & 125 MHz clocks 2x16 LCD panel 2x16 LCD panel Serial port interface Serial port interface

Hardware Requirements Load Weights To SDRAM Load Image From User Load Weights To BRAM Calculate Intermediate Sum Calculate Output Return Result To User

Special Problems Problem: NN interconnection complexity Problem: NN interconnection complexity Solution: Designing sub-networks for each digit Problem: Numbers representation Problem: Numbers representation Solution: Fixed-Point representation avoiding Floating Point operations Problem: Determining accuracy Problem: Determining accuracy Solution: Choosing proper resolution from Matlab simulations Problem: Trade-off between Area and Concurrency Problem: Trade-off between Area and Concurrency Solution: Searching for big FPGA which enables maximal parallelizing

Special Problems Problem: Modulation vs. Speed Problem: Modulation vs. Speed Solution: Simulating the hardware NN and finding the trade-off Problem: Large Memory size Problem: Large Memory size Solution: Finding FPGA with big memory or using outside memory cores memory cores Problem: Sigmoid function is continuous and infinite Problem: Sigmoid function is continuous and infinite Solution: - Function quantization according to our resolution to our resolution - Saving values for arguments in limited range - Saving values for arguments in limited range

Schedule AssignmentDate Learning the theoretical background Training and testing an example NN in Matlab Implementing a single Neuron in VHDL, synthesizing and checking its area Finding suitable Hardware solution (Area, Memory) Characterization Presentation17.11 Building training set Building our NN in Matlab, training and testing Determining weight length and needed resolution Determining NN structure Proposing final architecture

Schedule Date:Assignment Implementing Sigmoid function Planning the FSM Controller Implementing the NN in VHDL 20.12Midterm presentation Simulating the NN Synthesis Analyzing performance Writing project book 21.02Final presentation