Abstract
I n this paper, we suggest a method for designing and implementing of multilayer
Perceptron (MLP) neural network based on backpropagation (PB) learning algorithm. The
method is described using very high speed integrated circuit hardware description language
(VHDL), that used in developing the designs of a very large scale integration (VLSI). Firstly
artificial neuron with sigmoid activation function has been designed and implemented which
is considered as a basic unit of MLP. The MLP network is trained by BP algorithms, in the
Matlab environment in order to obtain the ideal parameters of the network. Then hardware
implementation of MLP on FPGAs, of types Spartan 3E and Virtex4 is achieved by using
integer format and floating point format respectively . A comparison is done between the two
arithmetic formats of MLP implementations on FPGAs.
Perceptron (MLP) neural network based on backpropagation (PB) learning algorithm. The
method is described using very high speed integrated circuit hardware description language
(VHDL), that used in developing the designs of a very large scale integration (VLSI). Firstly
artificial neuron with sigmoid activation function has been designed and implemented which
is considered as a basic unit of MLP. The MLP network is trained by BP algorithms, in the
Matlab environment in order to obtain the ideal parameters of the network. Then hardware
implementation of MLP on FPGAs, of types Spartan 3E and Virtex4 is achieved by using
integer format and floating point format respectively . A comparison is done between the two
arithmetic formats of MLP implementations on FPGAs.
Keywords
floating-point (FLP) arithmetic
FPGA
MLP neural networks
VHDL
Abstract
في هذا البحث تم اقتراح طريقة تصميم شبكة عصبية نوع مدرك متعددة الطبقات (MLP), بالاعتماد على تدريبها باستخدام خوارزمية الانتشار العكسي (BP) , ثم تنفيذها باستخدام لغة وصف الدوائر المتكاملة ذات السرعة الفائقة (VHDL) والتي تستخدم لعمل تصاميم ضخمة فائقة التكامل (VLSI). في البداية تم تصميم وتنفيذ خلية عصبية(باستخدام دالة التفعيل غير الخطية السيغمويد) والتي تعتبر وحدة أساسية في الشبكات العصبية الاصطناعية, تنفيذ الخلية باستخدام صيغة الاعداد الصحيحة وصيغة النقطة العائمة.تم تصميم وتنفيذ شبكة عصبية متعددة الطبقات. حيث إن الشبكة المصممة دُربت باستخدام خوارزمية الانتشار العكسي باستخدام برنامج محاكاة تم تطويره في بيئة Matlab لغرض الحصول على المعاملات المثلى الخاصة بالشبكة العصبية, تم بناء الكيان المادي للشبكة على شريحة مصفوفة البوابات المبرمجة حقليا نوع ,Spartan 3E وتم تنفيذ هذه الشبكة بصيغة النقطة العائمة على شريحة (FPGA) نوع Virtex4 ومقارنتها مع الشبكة المنفذة بصيغة الإعداد الصحيحة.