Нейропроцессоры
Особенности нейросети как вычислительной среды. Возможность работы в мультимикропроцессорных конфигурациях. Применение нейросигнальных процессоров для построения нейросред. Возможности применения аналоговых и гибридных решений для построения нейросред.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | реферат |
Язык | русский |
Дата добавления | 21.01.2015 |
Размер файла | 1,4 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ им. БАУМАНА
АЭРОКОСМИЧЕСКИЙ ФАКУЛЬТЕТ
Реферат на тему:
НЕЙРОПРОЦЕССОРЫ
Выполнил студент гр АК5-71
Коваленкой Николай
2006
Содержание
Введение
Краткая историческая справка
Понятие нейросети
Особенности нейросети как вычислительной среды
Применение DSP для построения нейросред
DSP фирмы Analog Devices
Быстрая выборка и исполнение команд
Возможность работы в мультимикропроцессорных конфигурациях
Мощные блоки вычислений
SIMD-режим выполнения операций
Применение нейросигнальных процессоров для построения нейросред
Нейросигнальный процессор NM6403
Структура нейросигнального процессора NM6403
Возможности создания многопроцессорных вычислителей на базе NM6403
Реализация нейронной сети на нейропроцессоре NM6403
Применение систолических процессоров для построения нейросред
Систолический процессор SAND
Систолический процессор CNAPS
Применение ПЛИС для построения нейросред
Применение аналоговых и гибридных решений для построения нейросред
СБИС ETANN80170NX
СБИС CLNN32/CLNN64 фирмы Bellcore
Применение процессоров общего назначения для посторения нейросред
Задачи, для решения которых используются нейросети
Вывод
Сравнение быстордействия различных решений
Основные достоинства и недостатки различных решений
Список литературы
Введение
нейросеть мультимикропроцессорный аналоговый вычислительный
История нейронных сетей насчитывает уже более полувека, но тем не менее эта область исследований все еще считается современной и многообещающей. На данный момент уже определены основные области применения нейросетей и лабораторные разработки воплотились в реально действующие системы. Нейронные сети стали внедряться повсеместно и, соответственно, стало развиваться аппаратное обеспечение для нейронных сетей.
Данная работа имеет своей целью дать описание нейронных сетей с точки зрения микропроцессорной техники. Изложены некоторые общие положения теории нейронных сетей, необходимые для описания подходов к построению нейросред, отмечены особенности нейросред, важные для их аппаратной и программной реализаций. В работе описаны существующие системы, предназначенные для реализации нейроалгоритмов и проведено сравнение различных подходов к построению подобных систем.
Краткая историческая справка
В 40-е годы XX века нейробиологи и нейроанатомы достигли значительного прогресса. Была хорошо изучена структура и функции нервной системы человека, В процессе накопления ими знаний выяснилось, что мозг имеет ошеломляющую сложность: сотни миллиардов нейронов, каждый из которых соединен с сотнями или тысячами других, образуют крайне сложную систему. Лучшее понимание функционирования нейрона и картины его связей позволило исследователям создать математические модели для проверки своих теорий. В первых же работах выяснилось, что эти модели не только повторяют некоторые функции мозга, но и способны выполнять функции, имеющие практическую ценность.
Параллельно с прогрессом в нейроанатомии и нейрофизиологии психологами были созданы модели человеческого обучения. Одной из таких моделей, оказавшейся наиболее плодотворной, была модель Д. Хэбба, который в 1949г. предложил закон обучения, явившийся стартовой точкой для алгоритмов обучения искусственных нейронных сетей. Он продемонстрировал ученым того времени, как сеть нейронов может обучаться.
В середине 1958 г. Фрэнком Розенблатом была предложена модель электронного устройства, названного им перцептроном, которое должно было бы имитировать процессы человеческого мышления. Перцептрон должен был передавать сигналы от <<глаза>>, составленного из фотоэлементов, в блоки электромеханических ячеек памяти, которые оценивали относительную величину электрических сигналов. Эти ячейки соединялись между собой случайным образом в соответствии с господствующей тогда теорией, согласно которой мозг воспринимает новую информацию и реагирует на нее через систему случайных связей между нейронами. Два года спустя была продемонстрирована первая действующая машина <<Марк-1>>, которая могла научится распознавать некоторые из букв, написанных на карточках, которые подносили к его <<глазам>>, напоминающие кинокамеры.
Перцептрон Розенблата оказался наивысшим достижением нейромодельного метода создания искусственного интеллекта в то время, он реализовывал принцип отказа от программирования в пользу обучения, на котором построены все современные нейросети.
Однако возможности перцептрона были сильно ограниченными: машина не могла надежно распознавать частично закрытые буквы, а также буквы иного размера или рисунка, нежели те, которые использовались на этапе ее обучения. В 1969 году вышла критическая работа Марвина Минского, в которой математически доказывалась ограниченность перцептронов и принципиальная невозможность их использования для многих классов задач. Так как успехи перцептронов были весьма скромными, а традиционные алгоритмы все более совершенствовались, решая все более сложные задачи, то эта область науки стала непопулярной на многие годы.
Постепенно интерес к нейронным сетям восстанавливался. Это объясняется в основном появлением в разное время большого количества работ, в которых научно доказывается, что специальные нейросетевые алгоритмы могут эффективно решать задачи, традиционно считающиеся трудными для <<традиционного>> программирования. К тому же развитие вычислительной техники позволило моделировать работу сложных нейронных сетей с малыми затратами. Это вызвало второй бум нейронных сетей, когда нейроалгоритмы считались панацеей и применялись всеми и везде.
В настоящее время ажиотаж вокруг нейронных сетей утих, определились области, в которых целесообразно применение нейроалгоритмов, появились научные работы, позволяющие аргументировать применение нейросетей и точно вычислить некоторые их количественные характеристики.
Поняте нейросети
Базовым элементом нейронной сети как математической модели является формальный нейрон. Формальный нейрон имеет некоторое множество однонаправленных входных каналов аналоговой или булевой информации и один выходной канал. По аналогии с биологическими нейронами входные каналы называются синапсами, а выходной - аксоном. Нейрон может быть булевым, то есть оперирующим с однобитовыми сигналами, или аналоговым. При работе с аналоговым нейроном обычно производится нормирование сигналов таким образом, чтобы значения входов и выходов принадлежали интервалу (0,1). Каждому входному каналу с номером j формального нейрона ставится в соответствие число wj, называемое весом этого канала. Вектор весов w = < w1,?, wn > является внутренней характеристикой формального нейрона с n входами.
Рис. 1 Формальный нейрон
Текущее состояние формального нейрона с n входными каналами определяется как взвешенная сумма его входов: s = ?j = 1n wjxj, где x = < w1,?, wn > есть входной сигнал.
Выходной сигнал формального нейрона есть функция его состояния: y = F(s). Функция F является внутренней характеристикой формального нейрона и называется активационной функцией. Отметим, что в случае булевых формальных нейронов часто используется пороговая функция с внутренней характеристикой ?:
В случае специального вида формальных нейронных сетей - клеточных автоматов - обычно применяется пороговая колоколоидальная функция
Одной из самых популярных функций для обработки сигнала внутреннего возбуждения в случае аналогового нейрона является логистическая функция или сигмоид с внутренней характеристикой ?:
При уменьшении ? сигмоид становится более пологим, в пределе при ? = 0 вырождаясь в горизонтальную линию на уровне 0.5, при увеличении ? сигмоид приближается по внешнему виду к функции единичного скачка с порогом в точке s = 0. Эта функция очень популярна из-за некоторых свойств. Например, она дифференцируема на всей оси абсцисс, причем её производная имеет простой вид F?(s) = ?F(s)(1-F(s)).
Рис. 2 Пример логистической функции
Нейронная сеть состоит из набора нейронов, связанных со входами, выходами и между собой. Формальные нейроны могут объединяться в сети различными способами, но самым распространенным видом нейросети стал многослойный перцептрон.
Рис. 3 Многослойный перцептрон
Сеть состоит из произвольного количества нейронов, разбитых на слои. Нейроны каждого слоя соединяются только с нейронами предыдущего и последующего слоев (в общем случае по принципу каждый с каждым). Отдельно выделяют входной и выходной слои, остальные слои называются внутренними или скрытыми. Каждый слой рассчитывает нелинейное преобразование от линейной комбинации сигналов предыдущего слоя. Отсюда видно, что линейная функция активации может применяться только для однослойной сети. Для многослойных сетей с линейной функцией активации можно построить эквивалентную однослойную сеть.
Многослойная сеть может формировать на выходе произвольную многомерную функцию при соответствующем выборе количества слоев, диапазона изменения сигналов и параметров нейронов.
Особенности нейросети как вычислительной среды
1. Необходимость обучения сети. Решение, которое дает нейросеть, определяется весами входных каналов и видом активационной функции нейронов. Если вид функции активации может быть выбран по общему описанию задачи, то вектор весов для каждого нейрона выбирается с помощью процедуры первичного обучения нейросети. Аналитический выбор этих весов, обычно, невозможен, так как нейросети применяются для задач, которые не имеют точного формального решения. Возможность точного вычисления весовых коэффициентов указывает на наличие простого алгоритмического решения, которое наверняка более эффективно, чем решение с помощью нейросети.
Просчет вектора весов обычно должен быть выполнен один раз и в процессе функционирования нейросети этот вектор фиксирован. Но в некоторых случаях необходимо использовать самообучающуюся нейронную сеть, тогда выполняется динамический пересчет весов, а иногда и изменение структуры сети.
Обучение проводят по обучающему множеству, то есть на основе подготовленных ситуаций, аналогичных тем, с которыми нейросеть будет иметь дело в процессе своего функционирования. Для элементов обучающего множества должны быть известны выходы нейросети. В зависимости от разницы между ожидаемым и фактическим выходом нейросети проводится коррекция векторов весов каждого нейрона. После того, как обучение было закончено, то есть значение ошибки на всем обучающем множестве достигло приемлемого уровня, веса фиксируются, нейронная сеть считается готовой к работе.
Особый интерес представляет обучение <<без учителя>>, то есть создание нейросети, для которой заранее не известны выходные значения нейросети, но есть некоторые требования, которым они должны удовлетворять. При этом полученное решение будет зависеть от алгоритма обучения нейросети. Уже разработаны методы обучения <<без учителя>> для многих классов задач.
2. Однородность выполняемых операций. Нейронная сеть может содержать десятки слоев и тысячи нейронов, но вне зависимости от сложности реализуемой ею функции выполняемые операции фиксированы.
Работа каждого слоя нейронной сети описывается одной формулой
Y = F(XW), |
где X - вектор входных значений, Y - вектор выходных значений, W - матрица весовых коэффициентов, а F() - функция активации, применяемая поэлементно к компонентам вектора.
Фактически вычислительных операций всего две: перемножение матриц XW и вычисление нелинейной функции F для каждого элемента вектора. Эта особенность позволяет, применив специализированные решения, сильно увеличить скорость работы нейросети.
3. Независимость работы нейронов. Выход нейрона зависит только от выходных сигналов нейронов предыдущего слоя, что делает возможным параллельную обработку всех нейронов одного слоя. Нет нужды сохранять какие-либо величины, кроме выходного вектора непосредственно предшествующего слоя. Если позволяет аппаратное обеспечение, можно реализовать конвейерную обработку входных воздействий, то есть подавать следующий входной вектор сразу после освобождения слоя нейронов, не ожидая просчета всех слоев сети.
4. Устойчивость решения. Выходной сигнал зависит от работы множества нейронов, причем в сложных нейросетях ни один из нейронов не может оказать сильного влияния на выход. Алгоритмы обучения сети в большинстве случаев подразумевают, что малые отклонения весов и выходов нейронов вызывают малые отклонения выходного сигнала нейронной сети. Так как обучение обычно представляет собою аналог метода градиентного спуска, то функционирование готовой нейросети заведомо не нарушается малыми изменениями весов и выходов нейронов. Подобная устойчивость решения, обеспечиваемая нейронной сетью, позволяет, например, смириться с частичными потерями данных в распределенных вычислительных системах или повысить устойчивость к аппаратным сбоям. К сожалению сильно распределенные нейросистемы не применяются так, как в нейронных сетях происходит интенсивный обмен информацией между отдельными нейронами. В современных системах аппаратный сбой ведет к изменению работы сразу большой части нейронов, что может привести к нарушению функционирования сети.
Очень широко свойство устойчивости нейросети применяется при выборе представления чисел в нейросети. Существует возможность значительно уменьшать точность величин без ухудшения качества работы нейросети. Поэтому в нейросистемах часто применяют числа с фиксированной запятой малой разрядности, вместо чисел с плавающей запятой, занимающих много места в памяти и замедляющих вычисления.
Применение процессоров общего назначения для построения нейросред
Это наиболее распространенная в настоящее время платформа для построения нейросистем, большинство из которых реализовано в виде программных комплексов (без особых средств аппаратной поддержки). Нейросетевые приложения в основном работают на рабочих станциях, являясь частью автоматизированных рабочих мест, а также самостоятельными средствами анализа.
Популярность такого подхода объясняется простотой программной реализации нейросети. Реализация нейроалгоритмов на рабочих станциях осуществляется средствами очень высокого уровня. Имеются библиотеки к распространеннным языкам высокого уровня, реализующие разнообразные функции, используемые в нейроприложениях, разработаны расширения объектно-ориентированных языков, которые позволяют оперировать с нейросетями на уровне объектов. Разработаны визуальные средства разработки нейроприложений, для пользования которыми даже не обязательны специальные навыки программирования. Эти средства содержат множество типовых решений и удобный графический интерфейс, позволяющий производить настройку на конкретную задачу. Полученное решение в большинстве случаев удовлетворяет пользователя по своим характеристикам.
Широкое применение нейросетей в архитектурах общего назначения также объясняется постоянным ростом производительности в этой области. Нейроалгоритмы относятся к ресурсоемким задачам, но современный уровень производительности рабочих станций позволяет для большинства задач получать приемлемые по скорости решения даже без особых процедур оптимизации. Кроме того распространенные сегодня процессоры имеют специальные расширения (нацеленные на мультимедиа приложения), которые позволяют ускорить обработку нейроалгоритмов. В частности, в архитектуру команд вводятся SIMD-инструкции, команды умножения с накоплением, возможности оперирования с упакованными данными малой разрядности. Причем этот процесс продолжается.
К сожалению процессоры общего назначения мало подходят для создания промышленных устройств в силу своей архитектурной избыточности. Тем не менее разработано множество нейроускорителей на этой базе, но они не имеют особых преимуществ перед другими подходами.
Достоинства процессоров общего назначения:
· Высокий темп роста производительности;
· Наличие средств высокого уровня;
· Совместимость с прошлыми наработками;
· Возможность интеграции нейроприложений с другими програмными средствами;
· Большой объем доступной памяти.
Недостатки процессоров общего назначения:
· Аппаратная избыточность, ведущая к недоиспользованию ресурсов;
· Малая пригодность к созданию дешевых промышленно применимых устройств, а также автономных и мобильных систем;
· Сложность построения масштабируемых, многопроцессорных систем;
Применение DSP для построения нейросред
Цифровые сигнальные процессоры в настоящее время наиболее часто применяются для реализации нейросетевых сред. Причин для такого положения дел несколько:
1. Низкая стоимость оборудования. Рынок DSP сложился уже достаточно давно, отработаны технологии производства и сбыта продукции, действует весьма жесткая конкуренция. Это означает постоянное снижение цен на DSP при улучшении их характеристик. Кроме того, для DSP не нужно дорогостоящее окружение (система ввода/вывода, система внешней памяти, система синхронизации и т.д.).
2. Низкая стоимость разработки. Производители DSP сопровождают свои системы развитыми средствами разработки и отладки. Для многих систем разработаны компиляторы языка C, эмуляторы, средства внутрисистемной отладки и программирования. Уже наработан большой объем готовых процедур для наиболее часто встречающихся задач.
3. Универсальность и гибкость. DSP не накладывают особо жестких ограничений на вид реализуемой нейросети, разработчик может построить сеть практически любой топологии и размеров, подключение внешней памяти позволяет при желании увеличить число нейронов и слоев. Так как в DSP-системах реализация нейронной сети идет на программном уровне, то нет ограничений на алгоритм работы сети и ее обучения. Если возникает необходимость внести изменения в работу готового устройства, то в большинстве случаев это может быть сделано ценой малых усилий.
4. Малое энергопотребление и тепловыделение. В настоящее время нейронные сети все чаще применяются в промышленности для создания сложных датчиков и организации систем управления, в бортовых и переносных радиолокационных и измерительных устройствах и системах связи. Реализуются нейросистемы для автоматического наблюдения за транспортными потоками, то есть все чаще возникает задача построения промышленно применимой, компактной, автономной нейросистемы. В подобного рода задачах очень большое значение имеет низкое потребление энергии и малое тепловыделение конструируемого устройства, а в этой области у DSP есть большие преимущества. Например, энергопотребление DSP компании Analog Devices семейства SHARC составляет 1.5Вт при напряжении 3.3В, а у чипов C6201 компании Texas Instruments - 7Вт при 2.5В.
DSP-процессоры в нейросистемах могут выполнять две функции: реализацию самой нейронной сети или реализацию контура логики общесистемного управления нейрокомпьютера.
Для реализации нейросреды может быть использован практически любой DSP, но наибольшее распространение получили семейство DSP TMS320C6xx компании Texas Instruments с фирменной архитектурой VelociTI и ADSP2106x компании Analog Devices с архитектурой SHARC. Эти цифровые сигнальные процессоры обладают достаточной производительностью для обработки сигналов в реальном времени, они ориентированы на использование в мультимикропроцессорных системах.
Рассмотрим архитектуру этих DSP с позиции применимости для построения сложных нейросистем.
DSP фирмы Analog Devices
Рис. 4 Блоки ADSP-21161
Семейство цифровых сигнальных микропроцессоров ADSP-2116x является наиболее совершенным, тактовой частота этих микропроцессоров повышена до 100 МГц, что позволило увеличить производительность до 600 MFLOPS. Рассмотрим архитектуру этого семейства на примере ADSP-21161, его основные функциональные блоки показаны на рис. 4.
Быстрая выборка и исполнение команд
Два генератора адреса данных DAG выставляют адреса памяти, когда данные памяти пересылаются в или из регистров ввода или вывода. Каждый генератор адреса сохраняет до четырех указателей адреса. Генератор адреса данных 1 может генерировать адреса только для памяти данных (DM - Data Memory). Генератор адреса даннных 2 может генерировать адреса либо для памяти данных, либо для памяти программ (PM - Program Memory). В данном процессоре используется модифицированная Гарвардская архитектура (SHARC - Super Harvard ARChitecture), которая предполагает разделение памяти и шин команд и данных, но по шине команд могут передаваться как инструкции, так и данные. Имея два генератора адреса данных процессор может одновременно генерировать два адреса для выборки двух операндов.
Для работы нейросети характерны операции с двумя операндами (например, самая часто используемая операция - умножение значения на входе нейрона и соответствующего ему весового коэффициента), поэтому возможность выборки двух операндов за один машинный цикл позволяет значительно увеличить скорость, эмуляции нейросети. Для этого, конечно, требуется распределение перемножаемых чисел по разным банкам внутренней памяти, но это ограничение для нейросети легко выполнить, так как операции с весами проводятся отдельно от операций с входными величинами. Кроме выборки операндов необходимо проводить выборку очередной инструкции. Если шина адреса команд (PM address bus) и шина команд (PM data bus) заняты, то выборка второго операнда в этом же цикле невозможна. Поэтому микропроцессор содержит кэш команд на 32 48-ми битных инструкции. Если текущая инструкция находится в кэше, то выборки из памяти команд не происходит и шины свободны для выбора второго операнда в этом же цикле.
Таким образом используемая модифицированная Гарвардская архитектура позволяет эффективно работать с большими объемами обрабатываемых данных с малыми потерями на обращение к памяти. Объем внутренней памяти 1 Мбит позволяет реализовывать нейросети, достаточно большие для широкого применения.
Система команд ADSP-21161 как и большинства других цифровых сигнальных микропроцессоров содержит арифметическую команду умножения с накоплением (C = A·B+C), причем можно указать число выполнений в цикле и правила изменения индексов для адресации A и B. Эта команда должна быть выполнена для каждого входа нейрона при просчете реакции сети. Данный микропроцессор поддерживает циклические буферы, при работе с которыми обеспечивается автоматическое изменение адресов.
Подобная работа обеспечивается наличием индексных регистров I, регистров модификации M, регистров длины буфера L и базовых регистров B. Всего существует по 16 регистров каждого из перечисленных типов, причем первые восемь (I0?I7, M0?M7, ?) связаны с DAG1, а вторые (I8?I15, M8?M15, ?) - с DAG2. При адресации с циклическим буфером регистр L инициализируется длиной буфера. Регистр L связан с соответствующим регистром I (I0 связан с L0 и т.д.). Каждый раз, когда выбирается регистр I, соответствующий регистр L обеспечивает устройство адресации по модулю информацией о длине буфера. Если сумма значений регистра M и регистра I пересекает границу буфера, модифицированное значение регистра I вычисляется логическим устройством адресации по модулю с использованием значения длины L.
В таблице описана работа циклического буфера.
Таблица 1
Работа циклического буфера
M > 0 |
I = I+M |
При I+M < B + L |
|
I = I+M-L |
При I+M ? B + L |
||
M < 0 |
I = I+M |
При I+M ? B + L |
|
I = I+M+L |
При I+M < B + L |
Подобная архитектура позволяет гибко управлять порядком обращения к элементам циклического буфера.
Возможность работы в мультимикропроцессорных конфигурациях
DSP архитектуры SHARC могут организовывать мультимикропроцессорные системы двумя способами: через содинения <<точка-точка>> (Data Flow Microprocessing) и кластерное соединение (Cluster Microprocessing).
Рис. 6 Соединение <<точка-точка>>
Рис. 7 Кластерное соединение
Вид конфигурации первого типа показан на рис. 6. В этом случае обмен информацией идет через два имеющихся 8-ми битных двунаправленных порта связи (link ports). Такая система позволяет пропускать поток данных через все микропроцессоры, осуществляя последовательную обработку. Применительно к нейросетям, таким образом значительно ускорить обработку, распределив слои сети по отдельным узлам. После того, как текущий узел рассчитал выход <<своих>> слоев он может передать его на дальнейшую обработку следующему процессору и принять следующие входные данные. Каждый порт может передавать до 8-ми бит данных за каждый такт.
Такое разбиение на последовательные блоки значительно ускоряет работу сети при наименьшем росте стоимости. Этот тип мультимикропроцессорных систем наиболее прост для построения и наиболее компактен при размещении на плате.
Кластерная система показана на рис. 7. Эта система более гибка, чем предыдущая, так как наращивание числа DSP и внешней памяти возможно без существенного изменения алгоритмов. Кластерная система включает несколько DSP, подключенных к общим шинам, с поддержкой межпроцессорного доступа к памяти и обращения к общей разделяемой памяти.
В кластерной конфигурации узким местом является общая шина, так как только два DSP могут участвовать в передаче информации в течение каждого цикла - остальные DSP ожидают освобождения шины. Поэтому в кластерной конфигурации задействованы порты связи для передачи данных без блокирования общей шины.
Рис. 8 Примеры мультимикропроцессорных конфигураций.
Часто применяется кольцевая топология, которая является частным случаем соединения <<точка-точка>>, и смешанная топология <<расширяемый кластер>> (Expanding Cluster), вид которых показан на рис. 7.
Мощные блоки вычислений
Обрабатывающие элементы PEx и PEy (Processing Elements) производят независимую вычислительную обработку. Каждый PE содержит регистровый файл и три вычислительных блока: арифметико-логическое устройство, умножитель и устройство сдвига. Вычислительные инструкции для этих элементов могут выполняться за один цикл, вычисления могут проводиться с фиксированной и плавающей запятой.
Рис. 9 Структура обрабатывающего элемента
Структура обрабатывающего элемента показана на рис. 9. Данные для и их вычислительных блоков идут через регистровый файл. Регистровый файл подключен к шинам данных памяти программ и данных. Умножитель и АЛУ поддерживают следующие форматы обрабатываемых чисел:
· 32 битное число с плавающей запятой. Используется 23 битная мантисса, 8 бит порядка и бит знака. Оставшиеся 8 бит не используются и устанавливаются в ноль.
· 40 битное число с плавающей запятой. Это формат повышенной точности, содержащий дополнительные 8 бит мантиссы. То есть используется 31 бит мантиссы, 8 бит порядка и бит знака.
· 16 битное число с плавающей запятой. Используется 11 бит мантиссы, 4 бита экспоненты и бит знака. Устройство сдвига поддерживает команды, осуществляющие преобразования типов между 32 битными и 16 битными числами с плавающей запятой. Выполнение этих команд занимает один цикл.
· 32 битное число с фиксированной запятой. Числа с фиксированной запятой всегда занимают 32 бита.
Поддерживается два режима округления: округление к нулю, округление к ближайшему.
АЛУ поддерживает следующие арифметические и логические операции:
· Сложение, вычитание, нахождение среднего для чисел с плавающей и фиксированной запятой
· Двоичный логарифм, масштабирование, извлечение мантиссы для чисел с плавающей запятой
· Логические операции 'И', 'ИЛИ', 'НЕ', 'исключающее ИЛИ'
· Функции: 'abs', 'pass', 'min', 'max', 'clip', 'compare'
· Преобразование форматов
· ?x, [1/( ?x)]
Умножитель может принимать в качестве операндов 32 или 40 битные числа с плавающей запятой и выдавать результат в формате 32 или 40 битного числа с плавающей запятой или принимать операнды в формате 32 битного числа с фиксированной запятой и выдавать 80 битный результат. Умножитель может выполнять следующие инструкции:
· Умножение чисел
· Умножение с накоплением и возможным округлением чисел с фиксированной запятой
· Округление регистра результата
· Очистка регистра результата
Отличительной особенностью обрабатывающего элемента является возможность параллельной работы АЛУ, регистрового файла и умножителя (блок сдвига в параллельных операциях не участвует). Параллельные вычисление занимают только один цикл, хотя задействуют несколько блоков. Таким образом, за один цикл можно выполнить инструкцию АЛУ и умножителя и даже две инструкции АЛУ. Параллельная работа накладывает ограничения на то, в каких регистрах находятся операнды. Рис. показывает это ограничение.
Рис. 10 Закрепление операндов при параллельном выполнении инструкций
SIMD-режим выполнения операций
ADSP-21161 содержит два набора вычислительных блоков и ассоциированных с ними регистровых файлов. Как показано на рис. обрабатывающие элементы PEx и PEy поддерживают режим SIMD (Single Instruction, Multiple Data) выполнения операций.
Рис. 11 SIMD-режим выполнения операций
В обычном режиме SISD (Single Instruction, Single Data) DSP использует только PEx. В режиме SIMD DSP параллельно выполняет следующие операции:
· Направляет единственную инструкцию в оба обрабатывающих элемента
· Загружает два набора данных из памяти в каждый элемент
· Выполняет одну и ту же команду одновременно в двух элементах
· Сохраняет результаты совместного выполнения в памяти
Оба обрабатывающих элемента содержат идентичные блоки (АЛУ, умножитель, блок сдвига, регистровый файл), выполняемая инструкция также одинакова для PEx и PEy, отличаются лишь обрабатываемые данные. Большинство регистров в PEx имеют соответствующие им регистры в PEy, выполняя инструкцию, обрабатывающие элементы используют значения из <<своих>> регистров.
Таким образом, используя SIMD-команды DSP может удвоить скорость обработки данных. В нейроприложениях это особо актуально, так как для них характерно выполнение одинаковых операций для большого набора однородных данных.
Применение ПЛИС для построения нейросред
Приборы программируемой логики, представителями которых являются ПЛИС (Программируемые Логические Интегральные Схемы) применяются на протяжении нескольких десятилетий для построения разнообразных интерфейсных узлов, устройств управления и контроля и т.д. Однако, если еще 5 лет назад ПЛИС занимали весьма скромную нишу на рынке электронных компонентов (в первую очередь из-за небольшого быстродействия и малого количества эквивалентных логических вентилей), то сейчас ситуация кардинально изменилась. Раньше о ПЛИС говорили, в основном, как о чем-то, недостойном внимания серьезных разработчиков. Но с появлением быстродействующих ПЛИС сверхвысокой интеграции, работающих на высоких тактовых частотах, их ниша на мировом рынке значительно расширилась.
Современные образцы ПЛИС, выполненные по современной 0,22-микронной технологии, способны работать на частотах до 300 МГц и реализуют до 3 млн. эквивалентных логических вентилей. Компания Xilinx, один из мировых лидеров в данной области, уже объявила о выпуске ПЛИС в 10 млн. логических вентилей.
Столь резкое увеличение мощности ПЛИС позволяет использовать их не только для реализации простых контроллеров и интерфейсных узлов, но и для цифровой обработки сигналов, сложных интеллектуальных контроллеров и нейрочипов. Появление быстродействующих ПЛИС со сверхнизким уровнем энергопотребления открывает широкие возможности по их использованию в системах мобильной связи (в частности, непосредственно в сотовых телефонах и пейджерах), в портативных проигрывателях (например, в МР3-проигрывателях) и других автономных устройствах.
ПЛИС изготовляются многими производителями, среди которых основными являются Altera, Xilinx, Atmel, Csypres, Lattice, Lucent. Выделить продукцию какой-либо одной из этих фирм невозможно, так как по техническим характеристикам они различаются очень мало.
По принципу формирования требуемой структуры целевого цифрового устройства все основные современные ПЛИС подразделяются на две группы:
· (CPLD - Complex Programmable Logic Devices). К этой группе относятся устройства, в которых требуемая структура создается программированием связей коммутирующих матриц с использованием технологий перепрограммируемых постоянных запоминающих устройств: FLASH или EPROM. CPLD содержат несколько логических блоков, объединенных коммутационной матрицей. Каждый логический блок представляет собой структуру типа ПМЛ, т.е. программируемую матрицу <<И>> и фиксированную матрицу <<ИЛИ>>. Особенность этих устройств заключается в том, что сформированная структура является энергонезависимой, то есть сохраняется при выключении питания. Для изменения структуры необходимо выполнить операции стирания и программирования новой структуры.
· (FPGA - Field Programmable Gate Array). К этому классу относятся ПЛИС, которые управляются битовой последовательностью, хранящейся во внутреннем статическом ОЗУ. Особенностью устройств этого класса является то, что требуемая структура целевого устройства должна восстанавливаться (записываться во внутреннее статическое ОЗУ) после каждого включения питания, что требует принятия дополнительных мер по сохранению и восстановлению требуемой конфигурации. С одной стороны это является недостатком подобных устройств, а с другой - позволяет реализовать системы с изменяющейся архитектурой, что может быть особенно полезно для реализации нейросетей с обучением.
Рассмотрим структуру ПЛИС на примере семейства AT40K, выпускаемого компанией Atmel. Чипы этого семейства имеют следующие характеристики:
· системная частота до 100 Мгц
· буфер на 3 состояния для каждой ячейки
· до 2Кбайт внутренней 10 нс SRAM
· модификации для напряжения питания 3.3В и 5В
· модификации для разных диапазонов температур
Основным архитектурным блоком является матрица одинаковых ячеек (рис. ). Массив однороден по всей площади, кроме шинных повторителей, отделяющих каждые четыре ячейки.
Рис. 26 Массив ячеек AT40K
На пересечении вертикальных и горизонтальных линеек повторителей расположен блок RAM 32x4, доступный для смежных ячеек. Эта память может быть сконфигурирована для синхронного и асинхронного доступа и для одно- и двухпортового режима работы.
Рис. 27 Плоскость шин (одна из пяти)
Сама концепция ПЛИС предполагает наличие возможности разнообразного соединения вычислительных ячеек. Весь кристалл охватывает пять идентичных плоскостей шин (рис. 27), каждая из которых содержит 2 плоскости express-шин и одну плоскость local-шин. Шины функционируют благодаря повторителям. Каждый повторитель имеет соединения с двумя соседними сегментами local-шины и двумя соседними сегментами express-шины. Повторители усиливают сигналы и могут соединять любые шины данной плоскости шин.
Ячейка может соединяться с любой из восьми соседних ячеек и любой из локальных шин (вертикальных или горизонтальных). Каждая ячейка может быть соединена только с одной шиной из шинной плоскости.
Рис. 28 Связи ячейки AT40K
Основой ячейки FPGA является логическая таблица (LUT - look-up table), представляющая собой однобитное ОЗУ на 8 ячеек. Триггеры всех логических таблиц входят в состав программирующего регистра и их начальное состояние заполняется в период конфигурирования ПЛИС. Каждая ячейка содержит две логические таблицы.
В ПЛИС используются программируемые D-триггеры. При конфигурировании, обычно, можно задать такие режимы работы триггера, как триггер с начальным сбросом (R) или начальной установкой (S), с записью по фронту или спаду синхросерии, с разрешением или без разрешения записи. Различные варианты соединения логических таблиц и триггера позволяют создавать на базе ячеек различные устройства: регистры, сумматоры, умножители, счетчики.
Каждая ячейка FPGA содержит буфер с тремя состояниями. Применение шин с тремя состояниями - типичное схемное решение вычислительных устройств, реализованных на плате. Благодаря такому решению, легко достигается многомодульность и наращиваемость системы, низкие аппаратурные затраты и малые задержки в системе межсоединений. Внутри заказных СБИС редко применяются шины с тремя состояниями из-за технологических трудностей их безотказной реализации, а также увеличенной задержки на их переключение. Тем не менее, в ПЛИС широко применяются шины с тремя состояниями, хотя это существенно повышает их себестоимость. Применение шин с тремя состояниями дает следующие преимущества:
· значительно упрощается подключение к чипу внешних устройств, что позволяет в конечном итоге снизить стоимость, размеры и энергопотребление системы в целом;
· упрощается переход от проекта схемы на плате к схеме на кристалле;
· упрощается построение распределенного ОЗУ.
Для реализации в ПЛИС модулей ОЗУ предусмотрено две возможности. Первую возможность предоставляет каждая ЛТ, которая может быть сконфигурирована как ОЗУ. Для наращивания емкости памяти выходы нескольких ячеек с модулями ОЗУ через тристабильные буферы подключаются к общим шинам. При этом требуется дополнительное оборудование только для построения схемы дешифрации адреса, которая выдает сигналы выборки той или иной логической таблицы для записи, а также того или другого тристабильного буфера для чтения. Такое ОЗУ распределено по площади кристалла и поэтому названо Distributed RAM (распределенным ОЗУ).
Вторую возможность предоставляют отдельные блоки памяти, имеющиеся в ПЛИС. Блоки двухпортовой 32x4 RAM распределены по кристаллу (рис. 26). Две четырехбитовые шины (входные данные и выходные данные) подключены к local-шинам. Пятибитные шины адреса записи и чтения подключены к пяти вертикальным express-шинам.
Преимуществами FPGA-чипов для реализации нейроустройств являются:
· Высокое быстродействие и постоянный его рост. Современные FPGA-чипы работают на частотах 300МГц, чипы выполняются с использованием прогрессивных методов с технологическими нормами до 0.09 мкм на девяти слоях металла. На рынке ПЛИС существует здоровая конкуренция, поэтому все технологические новшества сразу внедряются в серийные изделия. Постоянно расширяется спектр продукции, появляются гибридные решения, например, FPGA-чипы со встроенным микроконтроллером.
· Возможность реализации сложных параллельных алгоритмов. Данная технология изначально предполагает реализацию на одном кристалле множества блоков с интенсивным обменом информацией между ними. В то время как реализация параллельной обработки данных на процессорах общего назначения или цифровых сигнальных процессорах требует значительных усилий для построения мультимикропроцессорных систем, то в FPGA-системе разработчик не сталкивается с жесткими архитектурными ограничениями и может эффективно реализовать параллельные алгоритмы.
· Возможность перепрограммирования в системе. Программирование FPGA задает не только алгоритм обработки данных, но и сам тип устройства, реализуемого чипом, поэтому использование этой функции может иметь очень большой эффект для гибкости системы в целом.
· Совместимость при переносе алгоритмов на уровне языков описания аппаратуры. Так как реализация большого проекта с помощью FPGA вручную практически невозможна, то разработаны фирменные средства, автоматически реализующие устройство по его описанию. При этом используются стандартизированные языки описания аппаратуры (VHDL, AHDL, Verilog и др.). Эти языки не зависят от конкретной используемой FPGA-микросхемы, поэтому высока переносимость разработок. В этой области дела обстоят гораздо лучше, чем у процессоров общего назначения и цифровых сигнальных процессорах, где программа, реализующая любой алгоритм должна учитывать особенности конкретной аппаратуры.
· Возможность реализации стандартного интерфейса. Любые FPGA-чипы имеют в своем составе блоки ввода/вывода, которые могут быть настроены под различные стандарты электрического соединения входов микросхем. Выходные значения могут настраиваться на уровни ТТЛ, КМОП, шины PCI и многие другие, что позволяет избежать дополнительного оборудования при встраивании FPGA-схемы в систему.
· Наличие библиотек мегафункций, описывающих сложные алгоритмы. Вместе с фирменной САПР FPGA-систем поставляются макробиблиотеки стандартных элементов. Причем эти библиотеки содержат готовые сложные блоки(такие как блок быстрого преобразования Фурье).
· Малое время создания нейросистем. По этому параметру FPGA-нейросистемы превосходят все заказные чипы и приближаются к системам на существующих процессорах общего назначения и цифровых сигнальных процессорах. Это является очень важным, так как на фоне постоянного роста производительности процессоров специфические аппаратные решения должны показывать преимущество в скорости работы. При традиционной разработке нейросистемы на заказных интегральных схемах результат работы может оказаться уже морально устаревшим.
Реализовать нейросистему на ПЛИС-микросхемах можно двумя различными способами:
· Непосредственная реализация нейроархитектуры. При этом подходе различные участки ПЛИС реализуют отдельные нейроны, между которыми программируются межсоединения. Возможна реализация любой нейросети, в том числе с обратными связями, с разными типами нейронов, с неоднородностями в топологии межсоединений. Дополнительная гибкость обеспечивается за счет перепрограммирования ПЛИС.
Это решение имеет следующие достоинства:
o возможно обеспечить высокую параллельность обработки данных
o возможно реализовать любую топологию нейросети и вид нейронов
o возможно менять структуру сети на аппаратном уровне
Недостатками этого решения являются
o отсутствие готовых решений
o высокая схемотехническая сложность реализации отдельного нейрона
Особо значим второй недостаток. На ПЛИС с интеграцией в 40 тысяч эквивалентных вентилей можно реализовать до 15 параллельно работающих нейронов, а доступны ПЛИС с интеграцией в 2.67 миллиона вентилей (EP20K1000 фирмы Altera), что дает возможность реализовать, соответственно, 1000 параллельных нейронов. Такое число нейронов уже достаточно для серьезных нейроприложений. Но при необходимости реализации сложных нейронов ситуация сильно ухудшается. Реализация умножителя требует больших затрат ресурсов ПЛИС, а каждый нейрон требует по крайней мере одного умножителя. Это ведет к созданию решений, которые используют черты традиционных архитектур. Например, один блок умножения, который используется несколькими нейронами, или один блок вычисления сложной активационной функции. Это ведет к другому типу ПЛИС-нейроархитектур.
· Реализация аппаратной среды для микропрограмной реализации нейроалгоритмов. Этот тип оборудования может воплощать черты процессора общего назначения, цифрового сигнального процессора, специального нейропроцессора и периферийных блоков. Фактически, таким образом реализуется создание заказной нейросистемы. Но заказную СБИС реализовывать очень дорого и долго. Дороговизну разработки специального нейрочипа может окупить либо большая цена кристалла, либо большая серия. Но нейрочипы не нужны в массовых количествах, а сверхдорогие решения непозволительны для многих применений нейросистем. К тому же время разработки и внедрения нейрокристалла может быть настолько велико, что к моменту выпуска он может уже морально устареть.
Это исправляется использованием ПЛИС. Темпы роста вычислительной мощности ПЛИС, по крайней мере, не уступают аналогичной характеристике универсальных процессоров. ПЛИС дешевы, а проектирование устройства на базе ПЛИС занимает всего несколько месяцев. Поэтому в последние годы к ПЛИС начинают относиться как к новой надежде для нейроархитектур. Особенно это относится к странам, которые не имеют своего производства СБИС-чипов (к которым относится и Россия).
К сожалению, ПЛИС-нейросред разработано пока мало. Единственным описанным примером является модуль цифровой обработки сигналов XDSP-680-CP фирмы СканИнжинирингТелеком. Модуль XDSP-680-CP предназначен для решения задач цифровой обработки сигналов высокой производительности и, благодаря наличию трактов АЦП и ЦАП, позволяет строить полностью законченные системы обработки как цифровых, так и аналоговых сигналов с вводом-выводом данных из ПЭВМ. В качестве возможных областей применения производители указывают нейросетевые вычислители. Общая структура модуля приведена на рис.
Рис. 29 Структура модуля XDSP-680
Модуль выполнен в виде PCI-платы. Плата содержит четыре ПЛИС XCV50-4PQ240C, служебная ПЛИС типа CPLD XC95288XL, банк SRAM 128Kx32 со временем доступа 7.5нс, FLASH 16Мбит, АЦП 12бит 80МГц, ЦАП 14бит 125МГц, два внешних цифровых порта по 16бит, компаратор тактового ввода.
Системная тактовая частота FPGA-схем может составлять 250МГц, что позволяет добиваться высокой производительности:
· 220 MMAC на 8 разрядных операндах
· 45 MMAC на 16 разрядных операндах
· 5 MMAC на 32 разрядных операндах.
Применение аналоговых и гибридных решений для построения нейросред
Гибридные и аналоговые решения теоретически могут обеспечивать наибольшее быстродействие при эмуляции нейронной сети. К сожаления действующих реализаций таких чипов очень мало. Вероятно, это связано со сложностью разработки микросхем этого типа, а также с тем, что постоянный рост производительности цифровых устройств обеспечивает преимущество в скорости. Тем не менее на рынке присутствует аналоговая СБИС ETANN 80170NX фирмы Intel и гибридное решение СБИС CLNN32/CLNN64 фирмы Bellcore.
СБИС ETANN 80170NX.
Эта СБИС получила распространение в экспериментах физики высоких энергий. СБИС ETANN 80170NX содержит 64 входа и 64 нейрона (пороговый усилитель с сигмоидной передаточной функцией). Каждый вход соединен с 64 синапсами. Передаточная функция нейрона в СБИС близка к сигмоиде f(z) = [2/( 1+e-?z)], где усиление ? (параметр наклона может) изменяться.
Усиление передаточной функции определяет чувствительность нейрона. Низкое значение усиления позволяет интерпретировать выход нейрона как аналоговый, а высокое - как цифровой. Максимальное значение выхода нейрона также задается. Веса ограничены интервалом (-2.5,2.5). Скорость прохождения сигнала по одному слою зависит от усиления и примерно равна 1.5 мкс, что и определяет быстродействие. Точность выполнения операций примерно эквивалентна 6 бит, быстродействие - 1,3... 109 переключений/с.
Обучение выполняется методом обартного распространения ошибок с помощью Intel Neural Network Training System (INNTS), работающей на компьютере i486. Применяемое системное окружение представляет собой специальную версию пакета DynaMind. Обучение выполняется до получения приемлемого уровня ошибки выхода сети, и после достижения удовлетворительной работы веса загружаются в СБИС. Для реальной работы такого обучения недостаточно, так как программа симуляции не может точно смоделировать аналоговую работу СБИС. и, например, не отслеживает флуктуации в передаточной функции каждого нейрона. Поэтому следующий этап обучения представляет собой так называемый chip-in-loop (CIL) training, когда после каждого цикла веса записываются в СБИС, и выход сети непосредственно используется в процессе обучения.
Поскольку ETANN представляет собой аналоговую СБИС, то для ее надежной работы важны стабильные внешние условия. Специально сконструированный для этого модуль обеспечивает низкую пульсацию источника питания <5мВ (напряжение питания 5В) и температурную стабильность при 18, ?T < 1 (потребляемая мощность ETANN 5Вт).
СБИС CLNN32/CLNN64 фирмы Bellcore.
Гибридный нейрочип CLNN32 состоит из 32 нейронов и 496 двунаправленных адаптивных синапсов. CLNN64 содержит 1024 адаптивных синапсов. В наборе CLNN32/CLNN64 все нейроны взаимосвязаны, так что любая топология сети отображается подбором синапсов. Динамика сети полностью аналоговая, но значения синапсов хранятся/обновляются в цифровом виде с точностью 5 бит. На аппаратном уровне реализовано обучение сети - подбор весов происходит по алгоритму обучения машины Больцмана или Mean Field. Внутри также имеется некоррелированный генератор шума (32 канала), используемый при обучении по методу машины Больцмана.
CLNN32 может быть использован независимо или совместно с CLNN64 для построения более сложной архитектуры сети. Производительность достигает 108 переключений/с (при работе с CLNN64 удваивается). Для CLNN32 это означает, что примерно 105 32 битных образцов/с или 32 аналоговых канала (с полосой пропускания 50 кГц) могут быть использованы для быстрого распознавания/обучения. Время распространения для одного слоя нейронов <1мкс. <<Охлаждение>> (по методу Больцмана) или MF обучение требует 10... 20мкс.
По сравнению с ETANN СБИС CLNN32 имеет следующие очевидные преимущества:
· быстрое обучение (микросекунды по сравнению с часами при CIL-процессе;
· эффективный алгоритм обучения Больцмана, обеспечивающий быстрое нахождение хорошего решения (особенно хорош для задач распознавания изображений);
· простые и быстрые процедуры чтения/записи весов, выполняемые в цифровом виде
· легкая каскадируемость.
Применение систолических процессоров для построения нейросред
...Подобные документы
Рассмотрение способов применения и основных понятий нейронных сетей. Проектирование функциональной структуры автоматизированной системы построения нейросети обратного распространения ошибки, ее классов и интерфейсов. Описание периода "бета тестирования".
дипломная работа [3,0 M], добавлен 02.03.2010Особенности создания параллельных вычислительных систем. Алгоритм построения нитей для графа и уплотнения загрузки процессоров. Построение матрицы следования. Подсчет времени начала и конца работы нити. Логические функции взаимодействия между дугами.
курсовая работа [1012,4 K], добавлен 11.02.2016Принцип работы нейросетей и модели синтеза. Ключевые моменты проблемы распознавания речи. Система распознавания речи как самообучающаяся система. Описание системы: ввод звука, наложение первичных признаков на вход нейросети, модель и обучение нейросети.
курсовая работа [215,2 K], добавлен 19.10.2010Процессоры AMD Athlon 64X2, их параметры и характеристики, возможности разгона. Двухъядерные процессоры Intel и их особенности, совместимость новых процессоров с материнскими платами. Методика, последовательность и результаты тестирования процессоров.
статья [31,6 K], добавлен 03.05.2010Использование библиотеки готовых компонентов как основы процесса построения моделей организационных систем. Характеристика качественных методов принятия решений. Применение порядковой классификации в процессе UFO-моделирования систем телемеханики.
магистерская работа [732,7 K], добавлен 26.04.2011Исследование функциональных возможностей табличных процессоров в информационном обеспечении управления. Структура информационной системы на предприятии. Понятие электронных таблиц и табличных процессоров. Тенденции развития табличных процессоров.
курсовая работа [45,4 K], добавлен 15.03.2012История Intel, выпуск оперативной памяти для компьютера. Главные особенности построения бренда компании. Модели процессоров, выпускаемые корпорацией Intel. Виды подложек, используемых при производстве микросхем. Краткая история процессоров Pentium.
реферат [28,8 K], добавлен 13.02.2013Современные технологии принятия решений. Система управления предприятием и прибылью. Бизнес версия программного комплекса "Касатка" для высших учебных заведений, ее основная концепция, назначение и возможности. Принципы построения работы с программой.
презентация [71,4 K], добавлен 03.11.2011Микропроцессорные системы обработки данных. Специальные алгоритмы-планировщики для распределения операторов параллельных алгоритмов по процессорам вычислительной сети. Алгоритм построения и уплотнения нитей. Интерфейс программы, результаты работы.
курсовая работа [1,8 M], добавлен 22.02.2011Применение и развитие измерительной техники. Сущность, значение и классификация информационных измерительных систем, их функции и признаки. Характеристика общих принципов их построения и использования. Основные этапы создания измерительных систем.
реферат [25,9 K], добавлен 19.02.2011Разработка вычислительной системы, предназначенной для реализации заданного алгоритма обработки входных цифровых данных. Особенности ее построения на базе процессора x86 (К1810) в минимальном режиме. Описание микропроцессорного комплекта серии К1810.
курсовая работа [318,4 K], добавлен 15.08.2012Определение назначения и области применения электронных таблиц и табличных процессоров. Особенности функционирования конкретных табличных процессоров: OpenOffice.org Calc, Microsoft Excel 2007, Zoho Sheet, EditGrid: интерфейс, вкладки, выпадающие списки.
дипломная работа [3,0 M], добавлен 01.01.2011История и перспективы развития производства процессоров компьютеров. Основы работы центрального процессора. Характеристика многоядерных процессоров. Ведущие производители: Intel и AMD, их планы по выпуску новых процессоров. Советы по выбору CPU.
курсовая работа [2,8 M], добавлен 03.11.2011Анализ моделей и средств построения игровой компьютерной среды предметной области. Разработка алгоритмов построения игровой компьютерной среды. Отладка и экспериментальное тестирование компьютерной игры "Представление знаний в информационных системах".
дипломная работа [2,9 M], добавлен 12.08.2017Назначение, функции и структура электронных таблиц Microsoft Excel. Методика выполнения расчетов с использованием стандартных функций и построения диаграмм. Пример построения таблицы и диаграммы о размере выплат заработной платы сотрудникам предприятия.
контрольная работа [1,5 M], добавлен 24.07.2010Понятие и направления анализа акций. Изучение принципов работы нейросети с использованием программы "Нейросимулятор". Создание оптимально работающей нейросети для прогнозирования котировок акций, этапы данного процесса и оценка полученных результатов.
презентация [42,3 K], добавлен 19.08.2013Характеристика понятия "процессор". История развития процессоров, описание их параметров и устройства, особенности работы. Что такое быстродействие и эффективность работы процессора. Тонкости сборки и вспомогательные устройства. Описание кэш-памяти.
практическая работа [4,3 M], добавлен 17.01.2011Исследование возможности автоматизации забора и анализа статистических данных из различных систем. Разработка удобного и масштабируемого программного продукта для автоматизации построения маркетинговых отчетов. Защита внутрикорпоративной информации.
дипломная работа [3,0 M], добавлен 28.01.2014Анализ существующих решений для построения сети. Настройка и установка дополнительных программ. Сравнение платформ программного маршрутизатора. Установка DHCP и DNS серверов. Выбор монтажного оборудования. Создание и настройка Active Directory.
дипломная работа [4,8 M], добавлен 24.03.2015Составляющие информационных систем: определение, соотношение, изменчивость, выбор подхода к проектированию. Принципы построения корпоративных систем. Обзор технических решений для построения локальных вычислительных систем. Схемы информационных потоков.
курсовая работа [571,6 K], добавлен 16.10.2012