VIP STUDY сегодня – это учебный центр, репетиторы которого проводят консультации по написанию самостоятельных работ, таких как:
  • Дипломы
  • Курсовые
  • Рефераты
  • Отчеты по практике
  • Диссертации
Узнать цену

Реализация искусственных нейронных сетей с использованием ПЛИС

Внимание: Акция! Курсовая работа, Реферат или Отчет по практике за 10 рублей!
Только в текущем месяце у Вас есть шанс получить курсовую работу, реферат или отчет по практике за 10 рублей по вашим требованиям и методичке!
Все, что необходимо - это закрепить заявку (внести аванс) за консультацию по написанию предстоящей дипломной работе, ВКР или магистерской диссертации.
Нет ничего страшного, если дипломная работа, магистерская диссертация или диплом ВКР будет защищаться не в этом году.
Вы можете оформить заявку в рамках акции уже сегодня и как только получите задание на дипломную работу, сообщить нам об этом. Оплаченная сумма будет заморожена на необходимый вам период.
В бланке заказа в поле "Дополнительная информация" следует указать "Курсовая, реферат или отчет за 10 рублей"
Не упустите шанс сэкономить несколько тысяч рублей!
Подробности у специалистов нашей компании.
Код работы: W008044
Тема: Реализация искусственных нейронных сетей с использованием ПЛИС
Содержание
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

Федеральное государственное автономное образовательное учреждение высшего образования 
«Национальный исследовательский 
Нижегородский государственный университет им. Н.И. Лобачевского»

(ННГУ)



Институт информационных технологий, математики и механики



Кафедра информатики и автоматизации научных исследований



Направление подготовки: «Прикладная информатика»

Профиль подготовки: «Прикладная информатика в области обработки данных»







ВЫПУСКНАЯ КВАЛИФИКАЦИОННАЯ РАБОТА БАКАЛАВРА 









Тема:

«Реализация искусственных нейронных сетей с использованием ПЛИС»

	

	

	

	

Выполнила: 

студентка группы В0857

___________Чуринова Тамара Сергеевна

Подпись

Научный руководитель:

	Ведущий архитектор СВТЕКНН ________Безрук Константин Васильевич

	Подпись











Нижний Новгород

2017


Оглавление

	Введение	3

		1.	Искусственные нейронные сети.	6

		1.1. Виды реализаций ИНС.	9

		1.1.1. Программная реализация ИНС	9

		2. Постановка задачи.	12

		2.1. Выбор ИНС для реализации на ПЛИС	12

	2.1.1. Многослойный персептрон	14

		2.1.2. Алгоритм обратного распространения ошибки	15

		2.1.3. Реализация ИНС на персональном компьютере	16

		3. Программируемая логическая интегральная схема	17

		3.1.FPGA в качестве аппаратной базы для ПЛИС.	17

		3.2.Выбор FPGA для реализации ИНС.	18

	Заключение	22

	Литература	23







		

Введение

Тема искусственных нейронных сетей актуальна сейчас как никогда. Они применяются в самых различных областях: в медицине, физике, технике. Благодаря своей структуре, нейронные сети позволяют решать такие задачи как: аппроксимация функций, прогнозирование, управление, классификация образов, оптимизация и других. 

Нейросетевые технологии являются одним из наиболее интенсивно развиваемых направлений определения и реализации параллельных вычислений. Эти технологии позволяют не только более эффективно решать старые сложные задачи, но и позволяют реализовывать плохо формализуемые или неформализованные задачи, решение которых ранее не представлялось возможным. Способность к обучению является одной из отличительных черт ИНС. Возможность обучения и адаптации для применения в различных областях обработки информации делают нейронные сети одной из перспективнейших областей для изучения и исследования.

Существуют два способа реализации искусственных нейронных сетей: программная, когда разработана программная модель на одном из языков программирования, в которой будет прописана логика работы, и аппаратная, которая представляет собой специально разработанную микросхему, где на аппаратном уровне реализованы алгоритмы работы сети.

Программная реализация более гибкая, настраиваемая и наиболее подходящая для проверки идей разработчика. Обладает рядом очевидных преимуществ, связанных с простотой использования и внедрения в информационно-управляющую систему. Однако она уступает аппаратной по скорости работы и автономности, т.к. в ходе ее работы обработка данных нейронами выполняется не параллельно, а последовательно (псевдо-параллельно), в виду особенностей организаций вычислений на процессоре ЭВМ.  Эта особенность делает быстродействие такой реализации ИНС медленнее, чем ее аналог, реализованный аппаратно, а также сильно зависит от размеров ИНС и характеристик компьютерной системы. С ростом количества нейронов, программная реализация будет все медленнее и дольше производить вычисления. Либо необходимо повышать вычислительные мощности компьютерной системы.

Специализированные аппаратные средства решают проблему скорости, а также к их преимуществу можно отнести надежность, безопасность и дополнительные режимы эксплуатации. Действительно, аппаратная реализация показывает гораздо большие возможности, чем программная. Однако, в настоящее время аппаратные реализации узкоспециализированы, их интеграция с классическими компьютерными системами сложнее и дороже, чем у программных ИНС, а также такие реализации создаются под конкретную ИНС и не всегда могут быть адаптированы под другие архитектуры и задачи. 

Одним из видов аппаратной реализации является реализация нейронных сетей, на программируемой логической интегральной схеме (ПЛИС). Данная реализация позволяет использовать преимущества как программной, так и аппаратной реализации благодаря принципу своей организации. 

Элементарным объектом каждой ИНС является нейрон. В общем виде нейрон представляет собой блок хранения данных, сумматор, умножитель и логическую функцию активации, а также веса связей. Нейроны объединяются в слои, которые, в свою очередь, – в сеть. Данная структура реализуема на программируемой пользователем вентильной матрице (FPGA), которая наиболее точно передает параллельную архитектуру нейронов, что позволяет существенно увеличить скоростью ее работы, по сравнению с ее программным аналогом, так как в зависимости от аппаратных возможностей FPGA, возможно, добиться полной или практически полной параллелизации работы нейронов. 

Целью данной работы является разработка алгоритма автоматической генерации кода по обученной нейронной сети для Xilinx Embeded Dev Kit, с целью последующей реализации обученной нейронной сети на FPGA Xilinx. Актуальность поставленной задачи подтверждается тем, что развитие концепций реализации искусственных нейронных сетей на базе программируемых логических схем только набирает обороты. Для реализации поставленной цели необходимо выполнить следующие задачи:

Выбрать тип нейронной сети и метод обучения.

Реализовать ИНС на персональном компьютере и провести процесс обучения.

Реализовать ИНС на FPGA, на основе разработанной математической модели нейронной сети, учитывая архитектуру ПЛИС.  

Искусственные нейронные сети.

Согласно определению, искусственная нейронная сеть  — математическая модель, а также её программное или аппаратное воплощение, построенная по принципу организации и функционирования биологических нейронных сетей — сетей нервных клеток живого организма.

Первой работой, которая заложила теоретический фундамент для создания интеллектуальных устройств, моделирующих человеческий мозг на самом низшем структурном уровне, принято считать опубликованную в 1943г. статью Уоррена Мак-Каллока и Уолтера Питтса «Идеи логических вычислений в нервной деятельности». Они предложили математическую модель нейрона мозга человека, назвав ее математическим или модельным нейроном (рис. 1). 





Рис. 1. Математический нейрон Мак-Каллока-Питтса

Также как и биологический нейрон, математический нейрон имеет несколько входов и один выход, может существовать в возбужденном и невозбужденном состояниях, причем переход  в возбужденное состояние зависит от величины поступающих к нему сигналов и сил межнейронных синаптических связей. Таким образом, математический нейрон весьма правдоподобно имитирует структуру и свойства своего прототипа – биологического нейрона мозга. На этом основании У. Мак-Каллок и У. Питтс предположили, что если математические нейроны связать между собой проводами, имитирующими нервные волокна мозга, и пустить по проводам электрические сигналы, то такой искусственный мозг будет способен решать интеллектуальные задачи подобно тому, как это делает человеческий мозг.

Эта идея через 15 лет была подтверждена американским ученым Фрэнком Розенблаттом. В 1958 году он создал компьютерную программу для IBM-794, эмулирующую деятельность математических нейронов. Это была первая нейронная сеть, которая была названа перцептроном.  Его схема изображена на Рис.2.

 



Рис.2. Однослойный перцептрон Розенблатта

ИНС представляют собой систему соединённых и взаимодействующих между собой простых процессоров (искусственных нейронов). Каждый процессор подобной сети имеет дело только с сигналами, которые он периодически получает, и сигналами, которые он периодически посылает другим процессорам. И, тем не менее, будучи соединёнными в достаточно большую сеть с управляемым взаимодействием, такие по отдельности простые процессоры вместе способны выполнять довольно сложные задачи.



Рис. 3. а – структура нейрона; б – структура нейронной сети.

На рис. 3 а изображена типичная схема нейрона. Из схемы видно, что в общем виде нейрон представляет собой сумматоры, которые суммируют входные сигналы, умноженные на весовые коэффициенты, а результат суммирования проходит через блок функции активации, после чего и формируется выходное значение нейрона. Синапсы, входящие в нейрон, имеют весовой коэффициент. Данный параметр показывает, насколько данная связь важна для нейрона, а изменения ее значения способствует возможности обучения ИНС. Весовые коэффициенты нейронной сети формируют память нейронной сети и являются основным элементом, регулирующим работу сети. По отдельности нейроны представляют слабую вычислительную мощность и не представляют особого интереса, однако система, состоящая из нескольких соединенных нейронов, способна решать серьезные задачи в сфере обработки информации, от простейшего распознавания цвета пикселя, до анализа больших данных, на первый вид не имеющих общих черт и взаимосвязей.

Из схемы на рис. 3 б видно, что нейроны могут составлять слои. На схеме изображены три слоя: входной слой, скрытый и выходной. Стоит отметить, что в некоторых реализациях ИНС скрытые слои могут не использоваться. В связи с возможностью наличия у ИНС скрытых слоев, их разделяют на однослойные и многослойные. 

В однослойных сетях, сигналы от входного слоя передаются на выходной слой, который преобразует данный сигнал и выдает ответ. В многослойных сетях помимо входного и выходного слоя присутствует один или несколько скрытых слоев, которые участвуют в обработке сигналов. Многослойные сети обладают большими возможностями, чем однослойные, однако их реализация на порядок сложнее. 

В зависимости от характера связей между нейронами в слоях ИНС их можно разделить на рекуррентные и сети прямого распространения. В сетях прямого распространения, сигнал распространяется строго от входного слоя к выходному.  В рекуррентных нейронных сетях есть обратные связи, что позволяет сигналу распространятся от логический более удаленного нейрона, к менее удаленному.

Виды реализаций ИНС.

ИНС можно реализовать различными способами. В своей работе Гонтаренко Б.В.  выделяет два основных способа: программный и аппаратный. Данные способы реализации ИНС кардинально отличаются друг от друга и имеют как свои плюсы, так и минусы.

 Программная реализация ИНС

При программной реализации разрабатывается программная модель ИНС, которая является описанием работы нейронов и всей сети в целом. Данная реализация обладает следующими преимуществами:

простота использования и внедрения в информационно управляющие системы;

гибкость разработки, т.к. создание программного обеспечения является достаточно гибким процессом, что в свою очередь позволяет с малыми затратами внедрять и тестировать различные экспериментальные методы.

В виду своих особенностей, программная реализация ИНС имеет следующие недостатки:

скорость работы, т.к. в ходе работы ИНС, реализованной программно, обработка данных нейронами выполняется не параллельно, а последовательно (псевдо-параллельно), вследствие ограниченного количества вычислительных устройств и их внутренней архитектуры, то программная реализация проигрывает аппаратной в скорости работы, что в некоторых случаях может являться существенным фактором;

надежность, т.к. вероятность вероятности сбоя программы больше, чем отказа аппаратуры;

плохая масштабируемость, т.к. для увеличения сети без потери ее скорости работы нужно больше оборудования и многопроцессорных систем.

Таким образом следует отметить, что программно реализуемые ИНС выгодно использовать для проектирования различных экспериментальных сетей и их тестирования, а также для ИНС в которых не важна скорость обработки данных.

 Аппаратная реализация ИНС

	При аппаратной реализации ИНС функционирует на аппаратной основе. Аппаратная реализация имеет следующие преимущества над программной:

скорость работы, т.к. имеется возможность аппаратно реализовать параллельные вычисления в большем количестве, чем позволяет программная реализация ИНС;

надежность, т.к. вероятность отказа аппаратуры меньше, чем вероятность сбоя программы;

безопасность, т.к. аппаратно реализованные ИНС лучше защищены от несанкционированного доступа, чем реализованные программно, а также обеспечивают большую защиту прав на уровне архитектурных решений и схемотехнике. 

Можно выделить несколько решений аппаратной реализации ИНС:

ПЛИС, данные платы хорошо подходят для проектирования ИНС и имеют хорошую способность к масштабированию, но при увеличении сложности ИНС быстро растут затраты аппаратных ресурсов, что за счет выхода с каждым годом более мощных ПЛИС в перспективе является решаемой проблемой; 

Сигнальные процессоры, данный вид процессоров обладают плохой масштабируемостью, что в перспективе затрудняет разработку больших многопроцессорных сетей; 

Нейросигнальные процессоры, данный вид процессоров схож с сигнальными процессорами, но благодаря более узкой специализации под ИНС, за частую ориентированный под определенный ее вид, и наличию встроенного векторного сопроцессора имеет более высокую производительность;

Систолические процессоры, имеют лучшею чем у сигнальных процессоров масштабируемость, но при увеличении количества таких процессоров растут задержки в цепях прохождения сигнала;

Процессоры с каскадной архитектурой также обладают хорошей масштабируемостью, но требуют для своей работы много периферийных модулей. 

Таким образом, можно отметить, что аппаратно реализуемые ИНС выгодно использовать для проектирования различных сетей, в которых важна скорость работы, высокая параллелизация, надежность и безопасность системы. Но стоит учитывать, что некоторые решения ориентированы под определенный вид ИНС, что не позволяет при необходимости переконфигурировать систему.






Постановка задачи.

Для  выполнения данной выпускной  квалификационной работы необходимо проделать ряд действий:

Выбрать ИНС, подходящей для дальнейшей реализации на ПЛИС.

Выбрать метод и осуществить обучение ИНС.

Провести тестирование  на персональном компьютере.

Выбрать ПЛИС.

Произвести реализацию ИНС на выбранной ПЛИС.

Сравнение программной и аппаратной реализации. 

Выбор ИНС для реализации на ПЛИС

Для реализации на ПЛИС интересны следующие ИНС:

персептрон;

сети глубинного обучения;

нейронный газ;

сети адаптивно резонансной теории.

		Рассмотрим каждый из видов нейросетей.

Персептрон является одной из первых моделей ИНС. Основной его задачей является линейное разделение любых нелинейных связей.  Персептрон состоит из трех основных частей: рецепторов, ассоциативных и реагирующих элементов. Поступающие от рецепторов сигналы передаются сначала ассоциативным элементам, а затем реагирующим, таким образом персептрон позволяет связывать входящие на рецепторы сигналы с необходимой реакцией на выходе, тем самым способствуя созданию ассоциацией между входными и выходными данными. Персептрон является сетью с прямым распространением сигнала и может быть, как однослойным, так и многослойным. Структура персептронов позволяет им без проблем справляться с задачами классификации объектов, а также дает им возможность аппроксимации границ классов и функций. Важной особенностью персептронов является их довольно простое обучение. Из недостатков персептронов можно отметить их ограничения в задачах, связанных инвариантным, то есть не зависимым расположением на сенсорном поле, представлением образов.

Реализуемые при помощи ИНС технологии глубинного изучения использует структуру, имеющую в своей основе многослойные нейронные связи. Данная особенность позволяет ИНС формировать межслойные связи нейронов, которые дают ей возможность получать представление об окружающей ее среде. Основанные на ИНС системы глубокого обучения применяются в таких областях обработки информации, как обработка естественных языков, компьютерное зрение, распознавание речи, а также аудиораспознавание. 

Нейронным газом является самоорганизующаяся нейронная сеть (обучение которой происходит без участия учителя), которая постепенно принимая входные данные, позволяет выявить их топологическую структуру. Отличие нейронного газа от других алгоритмов обучения без помощи учителя заключается в том, что данный алгоритм не требует изначальных данных о предметной области, например, количество кластеров. Полученная в ходе работы данного алгоритма нейронная сеть представляет собой топологию входных данных и может быть использована для их кластеризации и классификации. Преимуществом данного алгоритма является возможность определения топологии входных данных без какой-либо первоначальной информации об этих данных. Также стоит отметить, что, задавая ограничения на размер строящеюся алгоритмом ИНС можно влиять на время его работы и потребляемые им ресурсы. Из недостатков данного алгоритма можно отметить тот факт, что результатом работы данного алгоритма является нейронная сеть, отображающая топологию входных данных и для того что бы решать задачи классификации или кластеризации нужно научится интерпретировать и использовать данную сеть.

Сети теории адаптивного резонанса  это разновидность нейронных сетей, которые основаны на теории адаптивного резонанса Гроссберга и Гейла Карпентера. Данная разновидность сете включает в себя как сети использующие для обучения учителем, так и сети, которые способны обучаться без учителя. Главной особенностью данного вида ИНС является пластичность, то есть, способность запоминания новых образцов не изменяя информацию уже о хранящихся образцах. АРТ сети хорошо подходят для решения задач предсказания, классификации и распознавания образов. 

При выборе ИНС, для реализации ее на ПЛИС, учитывались следующие особенности и свойства сети:

простота реализации нейронов ИНС на аппаратном уровне;

алгоритм реализации нейрона, с наименьшим количеством операций умножения и деления, т.к. выполнения данных операций на ПЛИС является ресурсоемкой задачей;

бинарные входы, чтобы избежать многочисленных операций с вещественными числами, т.к. их выполнения на ПЛИС являются ресурсоемкой задачей.

Под все поставленные условия подошел персептрон.  В нашей работе будет использовать многослойный персептрон Розенблатта.



Многослойный персептрон.

Когда искусственная нейронная сеть прямого распространения содержит множество слоев нейронов, она называется многослойным персептроном. Можно выделить следующие свойства многослойного персептрона:

между нейронами внутри одного слоя отсутствуют связи;

отсутствуют обратные связи между слоями;

нейрон последующего слоя получает сигналы от всех нейронов предыдущего слоя (полносвязность);

число входов, выходов, а также число нейронов во внутренних слоях не обязательно одинаково. 





Алгоритм обратного распространения ошибки.

Основная идея этого метода состоит в распространении сигналов ошибки от выходов сети к её входам, в направлении, обратном прямому распространению сигналов в обычном режиме работы. Можно сказать, что АОРО фактически использует разновидность градиентного спуска, перестраивая веса в направлении минимума ошибки.

Описание алгоритма:

1. инициализация матриц весов случайным образом (в циклах). 

2. предъявление нейронной сети образа (на вход подаются значения из обучающей выборки - вектор X) и берется соответствующий выход (вектор D). 

3. (прямой проход): вычисление в циклах выходов всех слоев и получение выходных значений нейронной сети (вектор Y).











где  - выход i-нейрона k-слоя, 

 - функция активации, 

 - синаптическая связь между j - нейроном слоя k-1 и i-нейроном слоя k, 

 - входное значение. 

4. (обратный проход): изменение весов в циклах по формулам: 





- для последнего (выходного) слоя, 

- для промежуточных слоев, 



где t-номер текущей итерации цикла обучения (номер эпохи), 

 - коэффициент обучения задается от 0 до 1,  - выход i-нейрона k-слоя, 

- синаптическая связь между j-нейроном слоя k-1 и i-нейроном слоя k, 

 —желаемое выходное значение на i-нейроне,

- реальное значение на i-нейроне выходного слоя. 

5. проверка условия продолжения обучения (вычисление значения ошибки и/или проверка заданного количества итераций). Если обучение не завершено, то 2 шаг, иначе заканчиваем обучение. Среднеквадратичная ошибка вычисляется следующим образом:







где Q - общее число примеров, 

Н - количество нейронов в выходном слое, 

 - желаемое выходное значение на i-нейроне, 

 - реальное значение на i-нейроне выходного слоя. 



Реализация ИНС на персональном компьютере. 

Для тестирования работы спроектированной нейронной сети, было произведено обучение на распознавание образов на персональном компьютере. В качестве образов были выбраны изображения символов от A до J.  Результаты работы представлены на рис. 4.



Программируемая логическая интегральная схема

ПЛИС – это электронный компонент, используемый для создания цифровых интегральных схем. В отличие от обычных цифровых микросхем, логика работы ПЛИС не определяется при изготовлении, а задаётся посредством программирования (проектирования). Для этого используются отладочные среды, позволяющие задать желаемую структуру цифрового устройства в виде принципиальной электрической схемы или программы на специальных языках описания аппаратуры Verilog, VHDL, AHDL и др., что обеспечивает желаемую гибкость как при создании, так и при применении устройства на объектах: предусмотрена возможность корректирования неких параметров устройства под специфику конкретного производства (количество входов от датчиков, количество выходов, желаемый коэффициент надежности и прочее).

Некоторые производители ПЛИС предлагают программные процессоры для своих ПЛИС, которые могут быть модифицированы под конкретную задачу, а затем встроены в ПЛИС. Тем самым обеспечивается уменьшение места на печатной плате и упрощение проектирования самой ПЛИС. 

FPGA в качестве аппаратной базы для ПЛИС.

В последние годы резко возрос интерес к использованию ПЛИС в качестве элементной базы нейровычислителей. Этому способствовало появление на рынке высокочастотных ПЛИС и продолжающаяся тенденция к снижению их цены, а, следовательно, и конечной стоимости разработок. Напряжение питания ПЛИС с каждым новым поколением этих микросхем постоянно уменьшается, что позволяет снижать энергопотребление при увеличенном быстродействии. Современные ПЛИС изготавливаются такими известными производителями как Altera, Atmel, Xilinx и многими другими. Технологические особенности FPGA ПЛИС делают их удобным объектом для использования в качестве элементной базы аппаратной реализации нейронных сетей. К ним относятся необходимость восстановления структуры устройства с помощью внутреннего статического ОЗУ, что позволяет реализовать алгоритмы обучения нейронной сети. При разработке проектов на ПЛИС используется принцип однотактной синхронизации, для реализации которого в ПЛИС синхросигналы распространяются по быстродействующей древовидной сети, обеспечивающей почти одновременный приход фронта синхроимпульса на синхровходы всех внутренних триггеров. Синхросигнал может вырабатываться и внутри самой ПЛИС. Данное свойство позволяет облегчить задачу построения многослойных конфигураций нейронных сетей. Современные ПЛИС практически невозможно программировать вручную. Для разработки проектов используются специальные среды программирования и языки параллельного программирования (VHDL). Это позволяет снять зависимость разработок нейронных сетей на ПЛИС от конструктивных особенностей конкретной ПЛИС, улучшить переносимость, а также создавать библиотеки стандартных нейросетевых модулей, что выгодно отличает нейросетевые проекты на ПЛИС от аналогичных разработок на цифровом сигнальном процессоре (DSP). Наконец, ещё одной немаловажной особенностью ПЛИС, делающей привлекательными разработки нейронных сетей на этой элементной базе является то обстоятельство, что любая ПЛИС состоит из множества однотипных элементов, что повышает надежность работы микросхемы и упрощает проектирование нейронной сети. 

 Выбор FPGA для реализации ИНС.

Для реализации искусственной нейронной сети в рамках выпускной квалификационной работы была выбрана ПЛИС от производителя Xilinx. Выбор обусловлен следующими преимуществами:

значительный объём ресурсов

высокая производительность 

высокая гибкость архитектуры с множеством системных особенностей: внутреннее распределённое и блочное ОЗУ, логика ускоренного переноса, внутренние буфера с третьим состоянием и т. д.

возможность программирования непосредственно в системе

конкурентоспособная стоимость

низкое энергопотребление

короткий цикл проектирования и быстрое время компиляции

развитые и недорогие средства проектирования

Как и остальные фирмы Xilinx требует использования своих программных пакетов. Дистрибутив пакета средств проектирования серии Xilinx ISE может предоставляться в форме самораспаковывающегося архива на Web сервере

Фирмы Xilinx. Для получения программного обеспечения WebPACK ISE необходимо зарегистрироваться на web-сайте www.xilinx.com.  

Для нас будут важны две независимые среды разработки — Xilinx Platform Studio (XPS) и Xilinx SDK.

XPS используется  для создания и конфигурирования аппаратной спецификации встроенной системы (процессорное ядро, управление памятью, интерфейсы ввода-вывода и проч.). 

SDK служит для создания программной части системы. SDK позволяет писать, компилировать и отлаживать программы на C/C++. Также имеется специальный симулятор — ISS (Instruction Set Simulator), благодаря которому можно тестировать программу в режиме симуляции.

Семействами ПЛИС фирмы Xilinx являются Virtex family, Kintex, Artix, Zynq и Spartan family. Мой выбор был сделан в пользу Spartan, а именно на FPGA Spartan-6 . Микроплата Spartan-6 FPGA LX9 - это прекрасное решение изучения особенности софт процессора MicroBlaz (soft-процессорное ядро, разработанное компанией Xilinx для использования в FPGA. MicroBlaze реализуется с помощью стандартной логики и блоков памяти ПЛИС.)  или Spartan-6 FPGA в общем. Набор поставляется с несколькими построенными на базе MicroBlaze системами, позволяющими пользователю начать разработку так же как на базе любого стандартного микропроцессора. Программное обеспечение включает Software Development Kit (SDK) позволяющий писать и отлаживать код.

Кристаллы новой  серии Spartan-6 характеризуются следующими особенностями:

Практически двукратное снижение уровня общей потребляемой мощности по сравнению с  кристаллами предыдущего поколения серии Spartan за счет внедрения новых технологических решений.

Наличие вариантов ПЛИС с пониженным энергопотреблением.

Новая инфраструктура распределения тактовых сигналов, обеспечивающая минимизацию задержек и расхождения фронтов тактовых сигналов, возникающих при распространении этих сигналов внутри кристаллов.

Существенно расширенный ряд корпусного исполнения, включающий как стандартные варианты корпусов, так и варианты без применения свинца.

Полная поддержка последней версии конфигурируемых 32-разрядных микропроцессорных ядер семейства MicroBlaze.




Реализация нейронной сети на ПЛИС. 



Прежде чем создать структуру нейронной сети необходимо спроектировать строение единичного нейрона. На Рис.5. изображена схема нейрона, который состоит из следующий блоков:  входы, веса входов, умножитель, сумматор, преобразователь и выход. Где:

Входы – набор входных сигналов. 

Весовые коэффициенты входов – регистры памяти, которые хранят значения весов входов нейрона.

Блок умножителей - производят умножения входного сигнала на соответствующий ему весовой коэффициент, 

Сумматоры – производят сложение произведений входных сигналов и весовых коэффициентов,

Преобразователь – блок реализующий функцию активации, 

Выходной сигнал – результат вычислений нейрона.



Рис. 5. Общая структура нейрона.



Используя общую структуру строится модель единичного нейрона. 





Заключение

В данной работе проведен анализ нейронных сетей с успешной реализации их на ПЛИС. Среди исследованных нейронных сетей был выделен персептрон.

Следует отметить, что использование нейронных сетей для классификации данных набирают большую популярность и имеют практическую значимость. Реализация таких нейронных сетей на базе ПЛИС позволяет разрабатывать компактные системы с высоким быстродействием, что является критическими характеристиками для создания систем классификации в реальном времени.






Литература

1. Гонтаренко Б.В. Проблемы реализации искусственных нейронных сетей на FPGA // Информатика и компьютерные технологии.

2. Грибачев В.П. Элементная база аппаратных реализаций нейронных сетей. // Компоненты и технологии.

3. Бодянский Е.В., Руденко О.Г. Искусственные нейронные сети: архитектуры, обучение, применения  – Харьков: Телетех.

4. Круглов В.В., Борисов В.В. Искусственные нейронные сети. Теория и практика – М.: Горячая линия-Телеком.

5. Круг П. Г. Нейронные сети и нейрокомпьютеры – 2002. М.: Издательство МЭИ.

6. А.И. Власов. Аппаратная реализация нейровычислительных управляющих систем //Приборы и системы управления.

7. Алюшин М.В. Аппаратная реализация быстродействующих нейросетей на основе программируемой логики фирм AMD, ALTERA, XILINX// Нейроинформатика -99. - М.: МИФИ. Часть 2.

8. Зотов В. MicroBlaze — семейство 32-разрядных микропроцессорных ядер, реализуемых на основе ПЛИС фирмы Xilinx // Компоненты и технологии. 2003. № 9.

9. Зотов В. Система команд микропроцессорного ядра MicroBlaze // Компоненты и технологии. 2004. № 1–3.

10. Зотов В. Embedded Development Kit — система проектирования встраиваемых микропроцессорных систем на основе ПЛИС серий FPGA фирмы Xilinx // Компоненты и технологии. 2004. № 4.

11. Зотов В. Организация памяти микропроцессорного ядра MicroBlaze // Компоненты и технологии. 2004. № 5.

12. Кнышев Д. А., Кузелин М. О. ПЛИС фирмы «Xilinx»: описание структуры основных семейств — М.: Издательский дом«Додэка-XXI». 2001.




		

4.......................
Для получения полной версии работы нажмите на кнопку "Узнать цену"
Узнать цену Каталог работ

Похожие работы:

Отзывы

Выражаю благодарность репетиторам Vip-study. С вашей помощью удалось решить все открытые вопросы.

Далее
Узнать цену Вашем городе
Выбор города
Принимаем к оплате
Информация
Нет времени для личного визита?

Оформляйте заявки через форму Бланк заказа и оплачивайте наши услуги через терминалы в салонах связи «Связной» и др. Платежи зачисляются мгновенно. Теперь возможна онлайн оплата! Сэкономьте Ваше время!

Сезон скидок -20%!

Мы рады сообщить, что до конца текущего месяца действует скидка 20% по промокоду Скидка20%