5 research outputs found

    Field programmable gate array based sigmoid function implementation using differential lookup table and second order nonlinear function

    Get PDF
    Artificial neural network (ANN) is an established artificial intelligence technique that is widely used for solving numerous problems such as classification and clustering in various fields. However, the major problem with ANN is a factor of time. ANN takes a longer time to execute a huge number of neurons. In order to overcome this, ANN is implemented into hardware namely field-programmable-gate-array (FPGA). However, implementing the ANN into a field-programmable gate array (FPGA) has led to a new problem related to the sigmoid function implementation. Often used as the activation function for ANN, a sigmoid function cannot be directly implemented in FPGA. Owing to its accuracy, the lookup table (LUT) has always been used to implement the sigmoid function in FPGA. In this case, obtaining the high accuracy of LUT is expensive particularly in terms of its memory requirements in FPGA. Second-order nonlinear function (SONF) is an appealing replacement for LUT due to its small memory requirement. Although there is a trade-off between accuracy and memory size. Taking the advantage of the aforementioned approaches, this thesis proposed a combination of SONF and a modified LUT namely differential lookup table (dLUT). The deviation values between SONF and sigmoid function are used to create the dLUT. SONF is used as the first step to approximate the sigmoid function. Then it is followed by adding or deducting with the value that has been stored in the dLUT as a second step as demonstrated via simulation. This combination has successfully reduced the deviation value. The reduction value is significant as compared to previous implementations such as SONF, and LUT itself. Further simulation has been carried out to evaluate the accuracy of the ANN in detecting the object in an indoor environment by using the proposed method as a sigmoid function. The result has proven that the proposed method has produced the output almost as accurately as software implementation in detecting the target in indoor positioning problems. Therefore, the proposed method can be applied in any field that demands higher processing and high accuracy in sigmoid function outpu

    Yapay sinir ağlarının uyarlanabilir donanımsal yapılarda gerçeklenmesi

    Get PDF
    06.03.2018 tarihli ve 30352 sayılı Resmi Gazetede yayımlanan “Yükseköğretim Kanunu İle Bazı Kanun Ve Kanun Hükmünde Kararnamelerde Değişiklik Yapılması Hakkında Kanun” ile 18.06.2018 tarihli “Lisansüstü Tezlerin Elektronik Ortamda Toplanması, Düzenlenmesi ve Erişime Açılmasına İlişkin Yönerge” gereğince tam metin erişime açılmıştır.Yapay Sinir Ağları (YSA'lar), biyolojik sinir sistemine dayalı elektronik modellerdir. YSA'lar girişlerden gelen verileri işleyen birbirine bağlı yapay nöronlardan oluşmaktadır. Bu mimariler, yazılım ya da donanım olarak gerçekleştirilebilirler. YSA'nın yazılım uygulamasının avantajı, tasarımcının YSA bileşenlerinin iç işleyişini bilmesine gerek olmamasıdır. Bununla birlikte, gerçek zamanlı uygulamalarda, yazılım tabanlı YSA'lar donanım tabanlı YSA'lardan daha yavaştır. YSA hesaplamaları paralel olarak gerçekleştirilmektedir ve paralel işlem için özel donanım aygıtları gereklidir. Birçok alandan araştırmacılar optimizasyon, sınıflandırma, kontrol, görüntü işleme vb. problemlerin çözümü için YSA donanım uygulamaları gerçekleştirmişlerdir. Bu uygulamalar, YSA'ların paralel doğasından yararlanmak için farklı türde cihazlar üzerinde gerçekleştirilmiştir. YSA'nın FPGA uygulamaları, yeniden yapılandırılabilir yapısı ve paralel mimarisi nedeniyle son yirmi yılda büyük ilgi uyandırmıştır. Bu tez çalışmasında, Quartus II şematik tasarım kullanılarak eğitilebilir çok katmanlı sinir ağı (MLNN) yapısının donanım uygulaması FPGA üzerinde tamamen kombinasyonel mantık olarak gerçekleştirilmiştir. Yapay sinir ağını eğitmek için eğim düşüm metodunu kullanan geri yayılım algoritması uygulanmıştır. Nümerik tanımlama için IEEE tek-hassasiyetli kayan-noktalı format kullanılmıştır. Bu çalışma aynı zamanda IEEE tek-hassasiyetli kayan-noktalı format ile tam uyumlu hızlı bir kayan noktalı toplayıcı, bir paralel çarpıcı ve bir sigmoid aktivasyon fonksiyonu bloğunu sunmaktadır. İşlemleri paralel olarak gerçekleştiren toplayıcı, paralel çarpıcı ve aktivasyon fonksiyonu bloğu tamamen kombinasyonel mantık olarak tasarlanmıştır. Bu yeni tasarımda, gecikmeyi azaltmak için kaydırma işlemlerinde kaydırmalı yazmaçlar yerine üç-durumlu tampon serileri kullanılmıştır. Üç-durumlu tampon serileri kullanıldığından kaydırma işlemi için saat darbesi gerekli değildir ve böylece sonuç tek bir çevrimde üretilir. Sadece kapı gecikmesi maliyetli önerilen tasarım, YSA'nın donanım uygulamaları için uygundur.Artificial Neural Networks (ANNs) are electronic models based on biological nervous system. ANNs are made up of interconnected artificial neurons which can process values from inputs. These architectures can be implemented either in software or in hardware. The advantage of the software implementation of ANN is that the designer does not need to know the inner workings of ANN components. However, in real time applications, software based ANNs are slower than hardware based ANNs. ANN computations are carried out in parallel and special hardware devices are required for parallel processing. Researchers from many disciplines have been performing ANN hardware implementations to solve a variety of problems in optimization, classification, control, image processing etc. These applications have been performed on different types of devices to take advantage of the parallel nature inherent to ANNs. FPGA implementations of ANN have aroused great interest during the last two decades due to its reconfigurable structure and parallel architecture. In this thesis, hardware implementation of trainable Multi Layer Neural Network (MLNN) structure on FPGA (Field Programmable Gate Array) is realized as entirely combinational logic by using Quartus II schematic design. The back propagation algortihm, which uses gradient descent metod is implemented in order to train the neural network. IEEE single-precision floating-point format is used for numerical description. This study also presents the hardware designs of a fast floating point adder, a parallel multiplier and a sigmoid activation function block that are fully compliant with the IEEE single-precision floating-point format. The adder, parallel multiplier and the activation function block are designed as entirely combinational logic that perform operations in parallel. In this novel design, tri state buffer series are used for shifting operations instead of shift registers for reducing latency. Because the use of tri-state buffer series, clock pulse is not required for shifting and thus the result is generated in only a single clock-cycle. The proposed design is suitable for hardware implementation of ANN at the cost of gate delays only

    Yapay sinir ağlarının uyarlanabilir donanımsal yapılarda gerçeklenmesi

    Get PDF
    06.03.2018 tarihli ve 30352 sayılı Resmi Gazetede yayımlanan “Yükseköğretim Kanunu İle Bazı Kanun Ve Kanun Hükmünde Kararnamelerde Değişiklik Yapılması Hakkında Kanun” ile 18.06.2018 tarihli “Lisansüstü Tezlerin Elektronik Ortamda Toplanması, Düzenlenmesi ve Erişime Açılmasına İlişkin Yönerge” gereğince tam metin erişime açılmıştır.Yapay Sinir Ağları (YSA'lar), biyolojik sinir sistemine dayalı elektronik modellerdir. YSA'lar girişlerden gelen verileri işleyen birbirine bağlı yapay nöronlardan oluşmaktadır. Bu mimariler, yazılım ya da donanım olarak gerçekleştirilebilirler. YSA'nın yazılım uygulamasının avantajı, tasarımcının YSA bileşenlerinin iç işleyişini bilmesine gerek olmamasıdır. Bununla birlikte, gerçek zamanlı uygulamalarda, yazılım tabanlı YSA'lar donanım tabanlı YSA'lardan daha yavaştır. YSA hesaplamaları paralel olarak gerçekleştirilmektedir ve paralel işlem için özel donanım aygıtları gereklidir. Birçok alandan araştırmacılar optimizasyon, sınıflandırma, kontrol, görüntü işleme vb. problemlerin çözümü için YSA donanım uygulamaları gerçekleştirmişlerdir. Bu uygulamalar, YSA'ların paralel doğasından yararlanmak için farklı türde cihazlar üzerinde gerçekleştirilmiştir. YSA'nın FPGA uygulamaları, yeniden yapılandırılabilir yapısı ve paralel mimarisi nedeniyle son yirmi yılda büyük ilgi uyandırmıştır. Bu tez çalışmasında, Quartus II şematik tasarım kullanılarak eğitilebilir çok katmanlı sinir ağı (MLNN) yapısının donanım uygulaması FPGA üzerinde tamamen kombinasyonel mantık olarak gerçekleştirilmiştir. Yapay sinir ağını eğitmek için eğim düşüm metodunu kullanan geri yayılım algoritması uygulanmıştır. Nümerik tanımlama için IEEE tek-hassasiyetli kayan-noktalı format kullanılmıştır. Bu çalışma aynı zamanda IEEE tek-hassasiyetli kayan-noktalı format ile tam uyumlu hızlı bir kayan noktalı toplayıcı, bir paralel çarpıcı ve bir sigmoid aktivasyon fonksiyonu bloğunu sunmaktadır. İşlemleri paralel olarak gerçekleştiren toplayıcı, paralel çarpıcı ve aktivasyon fonksiyonu bloğu tamamen kombinasyonel mantık olarak tasarlanmıştır. Bu yeni tasarımda, gecikmeyi azaltmak için kaydırma işlemlerinde kaydırmalı yazmaçlar yerine üç-durumlu tampon serileri kullanılmıştır. Üç-durumlu tampon serileri kullanıldığından kaydırma işlemi için saat darbesi gerekli değildir ve böylece sonuç tek bir çevrimde üretilir. Sadece kapı gecikmesi maliyetli önerilen tasarım, YSA'nın donanım uygulamaları için uygundur.Artificial Neural Networks (ANNs) are electronic models based on biological nervous system. ANNs are made up of interconnected artificial neurons which can process values from inputs. These architectures can be implemented either in software or in hardware. The advantage of the software implementation of ANN is that the designer does not need to know the inner workings of ANN components. However, in real time applications, software based ANNs are slower than hardware based ANNs. ANN computations are carried out in parallel and special hardware devices are required for parallel processing. Researchers from many disciplines have been performing ANN hardware implementations to solve a variety of problems in optimization, classification, control, image processing etc. These applications have been performed on different types of devices to take advantage of the parallel nature inherent to ANNs. FPGA implementations of ANN have aroused great interest during the last two decades due to its reconfigurable structure and parallel architecture. In this thesis, hardware implementation of trainable Multi Layer Neural Network (MLNN) structure on FPGA (Field Programmable Gate Array) is realized as entirely combinational logic by using Quartus II schematic design. The back propagation algortihm, which uses gradient descent metod is implemented in order to train the neural network. IEEE single-precision floating-point format is used for numerical description. This study also presents the hardware designs of a fast floating point adder, a parallel multiplier and a sigmoid activation function block that are fully compliant with the IEEE single-precision floating-point format. The adder, parallel multiplier and the activation function block are designed as entirely combinational logic that perform operations in parallel. In this novel design, tri state buffer series are used for shifting operations instead of shift registers for reducing latency. Because the use of tri-state buffer series, clock pulse is not required for shifting and thus the result is generated in only a single clock-cycle. The proposed design is suitable for hardware implementation of ANN at the cost of gate delays only
    corecore