close

Вход

Забыли?

вход по аккаунту

?

Микроэлектронные устройства цифровой обработки сигналов на базе модулярных вычислительных структур

код для вставкиСкачать
На правах рукописи
Соловьев Роман Александрович
Микроэлектронные устройства цифровой обработки сигналов на
базе модулярных вычислительных структур
Специальность: 05.13.05 - элементы и устройства вычислительной техники и систем
управления
Автореферат
диссертации на соискание ученой степени
доктора технических наук
Москва - 2018
Работа выполнена в ФГБУН Институте проблем проектирования в микроэлектронике
Российской академии наук (ИППМ РАН)
Научный консультант: академик РАН, доктор технических наук, профессор
Стемпковский Александр Леонидович
Официальные оппоненты:
 Беляев Андрей Александрович, доктор технических наук, АО НПЦ
«Электронные вычислительно-информационные системы»,
начальник лаборатории 12 научно-технического отдела 1
 Финько Олег Анатольевич, доктор технических наук, профессор,
Федеральное государственное казенное военное образовательное учреждение высшего образования «Краснодарское высшее военное училище имени
генерала армии С.М. Штеменко», профессор специальной кафедры №13
 Переверзев Алексей Леонидович, доктор технических наук, доцент,
ФГАОУ ВО НИУ «МИЭТ», директор Института микроприборов и систем
управления
Ведущая организация: Публичное акционерное общество «Институт электронных
управляющих машин им. И.С. Брука»
(ПАО «ИНЭУМ им. И.С. Брука»)
Защита состоится 27 декабря 2018 года в 11 часов на заседании
диссертационного совета Д 002.078.01 созданного на базе ФГБУН Института
проблем проектирования в микроэлектронике Российской академии наук (ИППМ
РАН) по адресу: 124365, Российская Федерация, г. Москва, Зеленоград, Советская
ул., д.3.
С диссертацией можно ознакомиться в библиотеке ИППМ РАН и на сайте:
http://www.ippm.ru/data/dissrt/Soloviev/text.pdf
Отзыв на автореферат в 2 экз., заверенный гербовой печатью организации и
оформленный согласно «Положению о порядке присуждения ученых степеней»
(п. 28), просим направлять в ИППМ РАН по адресу: 124365 Москва, Зеленоград,
ул. Советская, д. 3.
Автореферат разослан “___” ноября 2018 г.
Ученый секретарь
диссертационного совета Д 002.078.01,
кандидат технических наук, доцент
М.М. Жаров
2
ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ
Актуальность темы.
В истории вычислительной техники известны случаи, когда при проектировании
специализированных устройств не удавалось эффективно обеспечить нужные
быстродействие и надежность, используя обычную позиционную (двоичную)
арифметику. В то же время использование модулярных вычислений позволяло
решить проблему. Модулярная арифметика, известная также как система остаточных
классов (СОК), не является универсальным способом построения вычислителей, но в
некоторых специализированных применениях она незаменима. В связи с этим
интерес к ней не угасает вот уже многие десятилетия. Результаты исследований,
которые позволили бы преодолеть её недостатки и расширить область её
применения, постоянно публикуются, практически существует целое научное
направление, которое занимается этим вопросом. Большой вклад в развитие
модулярной вычислительной теории в нашей стране внесли работы учёных
Юдицкого Д.И, Акушского И.Я, Амербаева В. М, Червякова Н.И, Коляды А.А,
Финько О.А. и др. Среди зарубежных авторов можно отметить работы учёных H.
Aiken, W. Semon, M. Valach, A. Svoboda, М.A. Soderstand, D.D.Miller, G.A. Jullien,
M.A. Jenkins, B.J. Leon и др.
Известны преимущества, которые дает использование модулярной арифметики при
проектировании вычислителей:
1.
естественный параллелизм вычислений;
2.
возможность самоконтроля и исправления неисправностей.
Известны также и её недостатки:
1.
большие накладные расходы (наличие преобразователей из позиционного кода в
модулярный и обратно);
2.
вычисления на основе модулярной арифметики производятся с заранее
определенным конечным, динамическим диапазоном;
3.
трудности с операциями сравнения и округления чисел и, как следствие, плохая
применимость при работе с числами с плавающей точкой;
4.
представление модульных операций, на базе операций позиционной двоичной
арифметики, что приводит к избыточности оборудования при их реализации;
5.
неравномерность (неоднородность) модульных вычислителей по сложности и
времени выполнения операций;
6.
отсутствие должной поддержки проектирования модулярных вычислителей
устройств со стороны САПР (средств структурного синтеза).
3
Часть недостатков может быть нивелирована, если проектируются сложные
вычислители с большим объемом арифметических операций. Поскольку аппаратные
затраты преобразователей ограничены проектными нормами, то увеличивая
сложность устройства в целом, можно снизить долю накладных расходов. Тоже
самое можно сказать и о временных затратах. Частично недостатки могут быть
преодолены использованием IP генераторов – программных модулей, производящих
поведенческое синтезируемое описание на уровне RTL устройств, выполняющих те
или иные модулярные процедуры.
В большинстве случаев исследователи подходят к решению лишь частных задач в
теоретической области. Сравнение предложенных устройств зачастую проводится
эмпирическими методами, без реального синтеза в промышленных средствах
автоматизированного проектирования (САПР). Однако для того чтобы обойти по
показателям позиционную арифметику и для реального внедрения наработок
требуется комплексный подход. Этот комплексный подход заключается в создании
широкого набора базовых параметрических аппаратных блоков, на базе модулярной
арифметики, которые могут быть использованы при проектировании более сложных
устройств. При этом упор должен быть сделан на проектировании их таким образом,
чтобы их легко можно было внедрить в существующие маршруты на базе двоичной
арифметики и использование для синтеза модулярных устройств в современных
САПР.
Интерес исследователей к модулярной арифметике остается на высоком уровне и в
последние годы. Выходит множество публикаций по выбору базисных модулярных
оснований, проектированию энергоэффективных фильтров с конечной импульсной
характеристикой, применению в области криптографии, использование при
проектировании нейронных сетей и т.д. Таким образом, актуальность
проектирования микроэлектронных устройств на базе модулярной арифметики
подтверждается мировой практикой.
Объект исследования: широкий набор базовых IP-блоков модулярной
арифметики и методики их использования для реализации быстрых и/или надежных
устройств цифровой обработки сигналов.
Предметом исследования являются методы проектирования различных
устройств модулярной арифметики, интрамодулярные вычисления, методы
повышения надежности или ускорения вычислений на базе методов модулярной
арифметики.
Цель исследования: обобщение и развитие теории проектирования устройств,
использующих полезные свойства непозиционных арифметик в современной
микроэлектронике, охватывающих совокупность архитектурных решений,
математических моделей, методов, подходов и алгоритмов. Для достижения данной
цели в диссертационной работе поставлены и решены следующие задачи:
1. Подготовка подробного обзора последних публикаций по указанной тематике, с
целью выявления всех современных тенденций применения модулярной арифметики
в рамках задач микроэлектроники.
4
2. Разработка перспективных методов для проектирования элементарных операций
модулярной арифметики, к которым относятся модулярные сумматоры и модулярные
умножители.
3. Разработка аппаратных модулей и их анализ для наиболее ресурсоёмких
непозиционных операций модулярной арифметики, таких как прямые и обратные
преобразователи, представляющих основную трудность при реализации в
микроэлектронных устройствах.
4. Разработка
сложно-функциональных
устройств
ЦОС,
использующих
преимущества модулярной арифметики в своей работе, такие как КИХ-фильтры,
операция скалярного произведения векторов, циклические свёртки и другие
устройства с большим объемом арифметических операций.
5. Исследование
возможностей
дополнительного
интрамодулярного
распараллеливания вычислительных операций за счёт субмодулей в рекурсивной
модулярной арифметике и теоремы Гаусса об изоморфизме при работе в
комплексной плоскости.
6. Подготовка генераторов RTL-модулей для базовых блоков модулярной
арифметики с целью облегчения проектирования сложных аппаратных устройств,
использующих эти компоненты с различными параметрами и разными базисными
системами модулей.
7. Подбор и анализ перспективных наборов систем базисных оснований для более
эффективной реализации модулярных устройств.
Методы исследования: для решения указанных задач в работе использованы методы
математического моделирования схем, методы линейной алгебры, элементы теории
функций комплексных переменных, элементы теории вероятностей и
математической статистики, теория полей, а также методы, применяющиеся в САПР.
Научная новизна работы отражена в следующих пунктах:
1. Предложен новый метод реализации эффективного прямого преобразователя
модулярной арифметики для входных данных большой размерности на базе
регулируемого числа блоков редукции и коррекции, а также реализации
промежуточных блоков на базе интервалов или таблиц, обладающий свойством
оптимизировать устройства по площади или задержке. За счёт алгоритма подбора
блоков разбиения и оптимизации структуры устройства удалось получить
повышенные характеристики быстродействия устройства вместе с уменьшением
занимаемой площади на кристалле.
2. Предложена новая методика построения обратных преобразователей модулярной
арифметики с редуцированной структурой, для коррекции кратных ошибок на базе
полиадического кода. Предложенный подход даёт значительный выигрыш по
площади по сравнению с традиционной структурой.
5
3. Разработан новый метод проектирования двух аппаратных модулярных устройств:
фильтра с конечной импульсной характеристикой и устройства для вычисления
циклической свёртки с использованием чисел вида
на базе теоретикочислового быстрого преобразования Фурье в конечном поле, который обеспечивает
повышенное быстродействие устройств и высокую точность вычислений.
4 Предложена методика проектирования аппаратных однотактных умножителей на
базе специальных наборов модулей - трехмодульном
, и
четырехмодульном
. Умножители имеют
высокую скорость работы и дают возможности по поиску или исправлению
однократных ошибок вычислений.
5. Разработана методика для проектирования конвейерного устройства для
вычисления скалярного произведения векторов с регулируемым свойством
обнаруживать или корректировать ошибки вычислений на базе модулярной
арифметики.
6. Предложен эффективный метод для подбора набора модулей для заданного
динамического диапазона в рекурсивной модулярной арифметике с целью
достижения максимальной производительности устройства. Рекурсивная модулярная
арифметика базируется на использовании субмодулей малой размерности с целью
реализации высокоскоростных устройств.
7. Разработана перспективная методика для распараллеливания модулярных
вычислений на базе комплексных переменных с помощью теоремы Гаусса об
изоморфизме, что позволяет проектировать более экономичные устройства
обработки многомерных сигналов.
Практическая значимость: полученные в работе результаты могут быть
применены для проектирования цифровых устройств повышенного быстродействия
и/или высокой надёжности, в том числе для космического применения. Для большей
части предложенных устройств созданы свободно доступные параметрические
онлайн генераторы аппаратных Verilog HDL описаний. Объединение всех
предложенных подходов найдёт применение при проектировании модулярных
процессоров для специальных областей применения.
Достоверность
полученных
результатов
диссертационной
работы
подтверждена обоснованием основных теоретических положений и численными
экспериментами, проведенными в современных САПР в базисах ПЛИС и СБИС. Для
разработанных устройств были написаны программы для тестирования (test bench),
проверена корректность их работы. Получены основные параметры их работы, такие
как задержка на критическом пути и площадь, занимаемая устройством на кристалле.
Для устройств были разработаны и проверены обобщенные генераторы аппаратных
описаний. Полученные результаты хорошо согласуются с современными научными
данными в русскоязычных и зарубежных источниках. Результаты подтверждены
6
публикациями в рецензируемых научных журналах, успешными выступлениями на
научных конференциях, а также использованием на практике.
Реализация и внедрение результатов работы. Результаты диссертации
использовались в институте проблем проектирования в микроэлектронике
Российской Академии наук (ИППМ РАН) при выполнении ряда НИР и грантов
фондов РФФИ и РНФ:

НИР «Вега-СР-2015» Разработка архитектур высокопроизводительных
отказоустойчивых модулярных вычислительных устройств на принципах
рекурсивности;

НИР «Вега-Тл-2018» Исследование и разработка комплексных методов
обеспечения сбоеустойчивости комбинационных участков интегральных
микросхем в условиях дестабилизирующих воздействий;

Грант
РФФИ
14-07-00004
«Разработка
принципов
построения
специализированных микроконтроллеров работающих в базисе модулярных
вычислительных структур»;

Грант РФФИ 14-07-00005 «Разработка методов проектирования модулярных
устройств с коррекцией сбоев»;

Грант РФФИ 16-08-00241 «Разработка методик оценки и методов
повышения устойчивости комбинационных микроэлектронных схем к
одиночным сбоям»;

Грант
РНФ
14-19-01036
«Перспективные
методы
повышения
отказоустойчивости комбинационных микроэлектронных схем».
Основные положения диссертации, методики по повышению производительности
и надёжности устройств ЦОС, а также разработанные в работе аппаратные блоки
нашли применение и были внедрены в рамках опытно-конструкторских и научноисследовательских работ по проектированию микроэлектронных устройств на
предприятиях АО «ПКК Миландр», АО НПЦ «ЭЛВИС», НПК «Технологический
центр», АО "Зеленоградский нанотехнологический центр" и АО «Ангстрем». В
частности, методики по увеличению производительности специализированных
вычислителей нашли применение при проектировании высокопроизводительных
процессоров цифровой обработки сигналов, выпускаемых предприятием АО
«ПКК Миландр». Технические предложения по увеличению сбоеустойчивых
устройств за счёт применения особых качеств модулярной арифметики были
использованы в проектно-конструкторской деятельности АО НПЦ «ЭЛВИС» при
разработке ряда радиационно-стойких сигнальных микропроцессоров.
Апробация работы. Основные результаты работы докладывались и обсуждались на
конференциях:
7

Всероссийская научно-техническая конференция «Проблемы разработки
перспективных микро- и наноэлектронных систем» (МЭС). В 2012, 2014,
2016 и 2018 годах;

КОНГРЕСС по интеллектуальным
технологиям IS&IT’13 и IS&IT’17;

11th EAST-WEST DESIGN & TEST SYMPOSIUM (EWDTS 2013);

CEET International conference on Advances in Computing, Electronics and
Electrical Technology, Malaysia, Kuala Lumpur, 2014;

международный
конгресс
по
интеллектуальным
информационным технологиям AS-IT 2014.
системам
и
информационным
системам
и
Положения, выносимые на защиту:
1.
2.
3.
4.
5.
Аппаратный блок для операции получения остатка от деления на
произвольную целочисленную константу для входных чисел большой
размерности (64-512 бит), который превосходит встроенный аппаратный
блок для выполнения этой операции в современных САПР как по
производительности (около 20%), так и по занимаемой площади (в несколько
раз).
Новый подход к построению аппаратных фильтров с конечной импульсной
характеристикой (КИХ-фильтр) и циклических свёрток, включающий
переход в частотную область. Предложена модулярная реализация этих
устройств при помощи теоретико-числового преобразования Фурье по
модулям вида
, обеспечивающая повышение характеристик
быстродействия до 50% по сравнению с двоичными аналогами и высокую
точность вычислений.
Новый метод проектирования обратных преобразователей модулярной
арифметики на базе полиадического кода, которые используются в методе
проекций для обнаружения или исправления кратных ошибок вычислений.
Преобразователи занимают до 30% меньше площади на кристалле и
обладают высокой скоростью работы, что позволяет увеличить тактовую
частоту работы модулярного устройства до 40%.
Аппаратная реализация операции вычисления скалярного произведения
векторов, выполняемой на базе методов модулярной арифметики, что дает
возможность обнаружения и коррекции ошибок за счет дополнительных
модулярных каналов.
Новые методы для глубокого распараллеливания операций в устройствах,
работающих в базисах СОК. К таким методам относится интрамодулярное
разложение для комплексных чисел на базе теоремы Гаусса об изоморфизме.
А также методы подбора эффективных базисов для рекурсивной модулярной
арифметики.
8
Список публикаций по работе: Основные результаты диссертации
опубликованы в 30 печатных работах, из которых 23 в рецензируемых журналах из
перечня ВАК РФ для публикации основных научных результатов диссертаций
соискателей ученой степени доктора наук. Получен патент на полезную модель
«Вычислительный элемент модулярной арифметики».
Структура работы: Диссертация состоит из введения, шести глав, заключения и
списка литературы. Основная часть диссертации изложена на 305 страницах
машинописного текста. Диссертация содержит 76 рисунков и 37 таблиц.
Библиография включает 233 наименования.
ОСНОВНОЕ СОДЕРЖАНИЕ РАБОТЫ
Во введении обоснована актуальность темы, определена цель диссертационной
работы, сформулирована постановка задачи исследования и основные положения,
выносимые на защиту. Также приведены основные сведения о результатах
обладающих научной новизной, обосновано содержание глав диссертации.
В первой главе в целях обоснования и уточнения направления исследования
рассмотрено состояние проблем в области модулярной арифметики и приведён обзор
современных методов и алгоритмов для проектирования базовых блоков
микроэлектронных устройств на базе модулярной арифметики. Особое внимание
уделено обратным преобразователям и системам специализированных модулей.
Вторая глава посвящена разработке микроэлектронных устройств для
элементарных операций модулярной арифметики. К таким операциям относятся:
модулярное сложение и модулярное умножение, модулярные многовходовые
сумматоры. В первой части главы исследуются методы для разработки библиотеки
модульных арифметических блоков для модулярных вычислительных структур.
Предлагается реализовывать сумматоры и умножители в виде логических функций,
минимизированных с использованием современных эвристических алгоритмов. Это
позволяет строить эффективные модулярные блоки с точки зрения
производительности и занимаемой площади. Кроме того, данный метод является
универсальным с точки зрения выбора оснований. В совокупности с предложенным
алгоритмом сокращения аппаратных затрат, удалось достигнуть приемлемых
значений площади устройства для оснований 5-6 бит. Эффективность предлагаемых
методов проверена экспериментально.
Далее исследуются различные методы и подходы к проектированию
многовходовых сумматоров по модулю. Данные устройства используются в задачах
цифровой обработки сигналов и требуют максимальной производительности.
Предлагаются 4 метода для реализации многовходовых модулярных сумматоров
(рис. 1):
- модулярный пирамидальный сумматор (рис. 1а);
- модулярный сумматор с коррекцией на выходе (рис. 1б);
- модулярный последовательный сумматор (рис. 1в);
- модулярный сумматор с промежуточной коррекцией (рис. 1г).
9
Рис. 1. Виды модулярных многовходовых сумматоров
Показано, что использование предлагаемых подходов позволяет достичь уменьшения
критического пути на 33% либо уменьшения занимаемой площади до 65% в
сравнении с использованием позиционных сумматоров.
На основе сравнения характеристик различных реализаций мультиоперандных
сумматоров, синтезированных в базисе ПЛИС и заказных СБИС, был выявлен
наиболее эффективный метод построения многовходовых модулярных сумматоров.
Лучшим методом построения модулярных многовходовых сумматоров, как в
отношении быстродействия, так и занимаемой площади, является метод с коррекцией
на выходе. Большую часть всего модульного канала фактически занимает двоичный
мультиоперандный сумматор, реализация которого эффективно отработана в
современных САПР. Это объясняет наилучшие показатели в сравнении с другими
методами реализации модулярных многовходовых сумматоров. В некоторых частных
случаях удается достичь некоторых улучшений при использовании метода
промежуточной коррекции. Целесообразность использования модулярных
мультиоперандных сумматоров, как и других модулярных вычислительных структур,
обычно появляется при реализации операций с большим объемом арифметических
операций. В приведенных экспериментах преимущество модулярных структур
начинало проявляться в сумматорах с числом входов не менее 64.
Далее во второй главе исследуются различные подходы к проектированию
модулярных умножителей, которые требуют максимальной производительности для
использования в задачах цифровой обработки сигналов. Рассмотрено шесть
различных подходов к проектированию модулярных умножителей:
- индексный умножитель (рис. 2а);
- умножитель на базе метода разности квадратов (рис. 2б);
10
- умножитель на основе позиционного умножителя с прямым преобразователем (рис.
2в);
- умножитель на базе частичных сумм (рис. 2г);
- умножитель на базе полностью табличной реализации;
- умножитель на базе минимизированной таблицы истинности.
Рис. 2. Модулярные умножители
Предложены методики для эффективной аппаратной реализации каждого из
умножителей. В целом, результаты демонстрируют схожие тенденции, как для
СБИС, так и для ПЛИС. Эксперименты показали, что лучшим методом в общем
случае для построения умножителей по модулю для СБИС является индексный
метод, а для ПЛИС – метод разности квадратов.
Полученные во второй главе результаты в комплексе позволяют строить
высокоэффективные модульные каналы при проектировании сложных устройств
ЦОС.
В третьей главе исследуются немодульные операции модулярной арифметики,
такие как прямые и обратные преобразователи. Именно они представляют основную
11
проблему при проектировании модулярных устройств. Они либо замедляют их
работу, либо занимают очень большую площадь. Глава посвящена устранению этих
недостатков в преобразователях.
Предложена эффективная аппаратная реализация операции нахождения остатка
целочисленного деления для входных данных большой размерности, которая может
быть использована как прямой преобразователь для произвольного набора модулей, а
не только модулей формата
. Предложены два вариации метода на базе
интервалов и на базе таблиц. Один эффективнее по площади, другой по скорости
работы. Нахождение остатка от деления строится на базе формулы:
В этой формуле:
1)
Коэффициенты
могут быть рассчитаны заранее
для заданного модуля и известной размерности входных данных. Все эти
константы меньше в силу свойств вычета.
2)
Для расчета значений
требуется аппаратный блок
небольшого размера из-за небольшой размерности входа, сравнимой с .
Если разбиение меньше размерности , то блок вычисления модуля не
требуется.
3)
Выражение внутри финального модуля содержит
выражения не превышает
4)
Для минимизации значения
сложений, а значение
можно использовать следующее свойство:
Экспериментальные результаты показали, что эффективная реализация операции
вычета (с очень высокой скоростью работы) возможна фактически для любого
сочетания входных данных и размера модуля. Однако возможны серьезные затраты
по площади в случае если модуль очень большой (значения модуля 2000 и выше).
Проблему с площадью можно частично решить следующими способами:
1) используя интервальный метод вместо таблиц;
2) используя периодичность таблиц для сокращения их размера;
3) выбирая модули
близкие к степени двойки.
Эксперименты показали, что в случае синтеза операции
(эта операция обычно
обозначается знаком %), где
– константа, современные САПР не применяют
специальных методов, которые позволяют синтезировать оптимальные устройства
такого вида. Что выливается в чрезмерные затраты по площади устройства, а в
12
случае ПЛИС ещё и в очень большой задержке. Поэтому вместо операции “%” лучше
использовать устройства, предложенные в данной работе. Выигрыш для СБИС по
скорости составит около 20% и по площади в 4-60 раз (см. таблицу 1). Для ПЛИС
выигрыш по скорости в 2-5 раз, по площади в 3-4 раза.
Таблица 1. Сравнение прямых преобразователей для модуля p=43 в СБИС для
встроенной в САПР операции и предложенной эффективной реализации (FFC).
Размерност
ь входных
данных
64
128
256
512
Задержка (нс)
FFC
(min
delay
)
1.35
1.58
1.84
2.08
Площадь (мкм2)
Встроенна
я в САПР
операция
Ускорен
ие (%)
FFC
(min
area)
Встроенна
я в САПР
операция
Уменьшен
ие (раз)
1.25
2.08
2.36
2.76
-8 %
24 %
22 %
25 %
1345
1997
3086
4752
4880
22901
77267
269991
~ 4 раза
~ 12 раз
~ 25 раз
~ 59 раз
Далее в главе предложен новый метод построения обратных преобразователей
модулярной арифметики на базе полиадического кода, обладающих свойствами
корректировать ошибки вычислений, с улучшенными характеристиками по площади
и задержке сигнала.
Основным методом коррекции ошибок на этапе обратного преобразования является
так называемый «метод проекций». Суть этого метода лучше всего объяснить на
примере исправления одиночной ошибки. Рассмотрим четырехмодульный набор
оснований
в котором два последних модуля – являются проверочными.
Метод проекций подразумевает последовательное исключение модулей и
восстановление числа – проекции по остаткам
оставшихся трех оснований.
Результат этой операции позволяет сделать вывод о том, был ли вычислительный
канал у исключенного модуля искаженным. Для обеспечения высокого
быстродействия, проекции вычисляются параллельно (рис. 3).
Обратные преобразователи, использующиеся для вычисления проекций, могут быть
реализованы любым возможным способом. Для обеспечения высокой пропускной
способности пользуются преобразователями на основе перевода в полиадический
код. В этом случае открываются дополнительные возможности по оптимизации
итоговой архитектуры. Главные пути усовершенствования этой архитектуры
базируются на некоторых особенностях операции перевода в полиадический код. Вопервых, старший разряд полиадического представления проекции гарантированно
сигнализирует о том, вышла ли эта проекция за динамический диапазон вычислений.
13
Другая возможность по оптимизации данной архитектуры связана с самим процессом
получения разрядов полиадического представления для проекций.
Рис. 3. Коррекция одиночной ошибки методом проекций
Обратившись к рисунку 3, можно заметить повторяющиеся блоки обратных
преобразователей, которые отличаются лишь набором входных данных. Однако и
вычеты, поступающие на входы преобразователей, также частично совпадают, что,
принимая во внимание структуру дельта алгоритма, открывает перспективы по
объединению некоторых участков схем на первом уровне преобразования.
Предложенный метод не зависит от числа оснований и позволяет не только сократить
площадь преобразователя более чем на 30%, но и увеличить тактовую частоту на 30–
40%.
Полученные в третьей главе результаты позволяют строить высокоэффективные
устройства для выполнения немодульных операций при проектировании сложных
устройств ЦОС на базе модулярной арифметики.
В четвертой главе предлагаются методики проектирования различных
микроэлектронных устройств, применимых в задачах цифровой обработки сигналов,
построенных на базе модулярной арифметики. К таким устройствам относятся КИХфильтры, позиционные многобитные умножители, скалярное умножение векторов,
циклические свёртки.
Предложена аппаратная реализация модулярного КИХ-фильтра на основе
теоретико-числового БПФ. КИХ-фильтрация является базовой процедурой в таких
областях цифровой обработки сигналов, как обработка речевых сигналов, обработка
радиолокационных сигналов, фильтрация разного рода помех в широком спектре
человеческой деятельности.
Фильтр с конечной импульсной характеристикой, по своей сути, является не чем
иным, как линейной сверткой входной последовательности некоторых цифровых
14
отсчетов с последовательностью коэффициентов фильтра. Архитектуры для
вычисления линейных сверток могут быть различными. Выделяют несколько типов
архитектур: последовательную, параллельную и последовательно-параллельную.
Последовательная схема характеризуется малым числом вычислительных блоков,
интенсивным обменом с памятью и низкой производительностью. В крайнем
проявлении эта схема представляет собой умножитель с накоплением и управляющее
устройство, которое обеспечивает загрузку нужных коэффициентов из памяти. В
этом случае для нахождения одного выходного отсчета требуется N тактов. Этот
метод реализуется программно на сигнальных процессорах или компьютерах общего
назначения. В случае, если производительности DSP-процессора не хватает, фильтр
реализуют аппаратно, используя параллельные архитектуры. Параллельные схемы
эксплуатируют метод конвейеризации, разделяя этапы конвейера регистрами.
Каноническая форма КИХ-фильтра изображена на рисунке 4.
Рис. 4. Каноническая форма КИХ фильтра
Преимущества данной архитектуры - это ее быстродействие и возможность
работы в реальном времени. К недостаткам можно отнести значительное увеличение
аппаратных затрат.
Кроме реализаций во временной области, возможна также реализация в
частотной области на базе теоремы о свертке, основной смысл которой заключается в
следующем: спектр циклической свертки равен произведению спектров исходных
сигналов:
, где
и
- спектры исходных сигналов,
спектр циклической свертки двух сворачиваемых сигналов (рис. 5).
Рис. 5. Структурная схема вычисления циклической свертки в частотной области
15
Таким образом, вместо того, чтобы реализовывать свертку непосредственно по
формуле свёртки, можно перевести сигналы в частотную область с помощью БПФ,
произвести почленное перемножение, а затем перевести результат обратно.
Для дальнейшего повышения характеристик быстродействия, надежности,
точности или мощности можно использовать математический аппарат модулярной
арифметики. Используя китайскую теорему об остатках, появляется возможность
разделить структуру фильтра на некоторое количество параллельных и независимых
модульных каналов, каждый из которых является КИХ-фильтром в конечном поле
(поле Галуа). Такое распараллеливание приводит к уменьшению разрядностей
операндов, что положительно сказывается на быстродействии устройства и
потребляемой мощности. Кроме того, добавляя дополнительные модульные каналы,
модулярная арифметика позволяет повышать надежностные характеристики
разрабатываемых устройств. Разработанное устройство КИХ-фильтра на базе
теоретико-числового БПФ представлено на рис. 6.
Рис. 6 Структурная схема модулярного КИХ фильтра в частотной области
Результаты синтеза показывают, что предложенная схема по тактовой частоте
обгоняет традиционный вариант при больших разрядностях входных данных и
больших порядках фильтра, однако существенно превышает традиционные схемы по
занимаемой площади. Несмотря на кажущуюся неудовлетворительность достигнутых
результатов, модулярные фильтры обладают некоторыми преимуществами, которые
могут найти применение в КИХ-фильтрах специального назначения. Во-первых,
фильтрованный сигнал на выходе модулярного устройства на базе БПФ в конечном
поле значительно точнее, чем сигнал на выходе традиционного двоичного фильтра.
Это связанно с тем, что в БПФ в конечном поле в качестве поворачивающих
коэффициентов используются элементы этого конечного поля, то есть целые числа.
Тем самым мы исключаем ошибки представления коэффициентов. Другим
16
преимуществом предлагаемого подхода является тот факт, что, добавляя
дополнительные модульные каналы, мы получаем возможность контролировать и
даже исправлять ошибки, которые возникают в процессе вычисления.
Дополнительно были рассмотрены КИХ-фильтры, работающие в комплексной
плоскости. На основе теоремы Гаусса об изоморфизме предложен подход для более
глубокого распараллеливания операций в модулярных каналах. Теорема Гаусса об
изоморфизме, которая позволяет перейти от операций над целыми комплексными
числами к операциям над изоморфными образами (вычетами) этих чисел в кольце
неотрицательных целых чисел. Иными словами, данная теорема помогает перейти от
арифметики в комплексной плоскости к арифметике действительных чисел.
Общая структура вычислителя, приведена на рисунке 7.
Рис. 7. Общая структурная схема вычисления по пяти модулям
Первый каскад схемы переводит поток комплексных чисел
,
, подаваемый на вход схемы, в код Гаусса
и
)
соответственно. Во втором каскаде, выполняется операция, КИХ-фильтрации.
Структура устройства представляет традиционную каноническую форму КИХ
фильтра с загружаемыми коэффициентами, за исключением сумматоров и
умножителей, которые в данном случае являются операциями по модулю. Операции
сложения и умножения выполняются независимо по каждому модулю , а значения
на выходе находятся в диапазоне
. В третьем и четвертом каскадах
выполняются преобразования из гауссового кода в комплексные числа и далее в
каскаде дельта-преобразования в комплексное число.
Далее в главе исследована возможность реализации аппаратных однотактных
умножителей большой разрядности, на базе модулярной арифметики и специальных
модулей, близких к степеням 2 в параллельном виде. Базисом для рассматриваемого
устройства служат специальные наборы оснований на базе традиционного
трехмодульного
набора
,
а
также
перспективного
четырехмодульного набора оснований
.
17
Устройство, построенное на базе системы из 3 модулей, имеет более высокую
скорость работы и занимает меньшую площадь на кристалле, чем аналогичное
устройство на базе системы из 4 модулей. На некоторых настройках синтеза в САПР
по мере роста входных разрядностей разрыв сокращается, и уже на 32 битных входах
задержка модулярной схемы умножителя на наборе
оказывается
равной задержке позиционного двоичного умножителя. Модулярный набор из
четырех оснований проявил себя хуже с точки зрения производительности и
занимаемой площади. Более детальный анализ результатов синтеза показал, что это
обстоятельство связанно с трудностью реализации деления на 3 в составе обратного
преобразователя. Однако поскольку область всех возможных комбинаций значений
вычетов в рассматриваемой системе больше, чем область разрешенных комбинаций,
то появляется возможность с вероятностью около 66% находить ошибки,
возникающие в процессе вычислений или передачи данных. Если говорить точнее, то
область разрешенных значений в три раза меньше области всех возможных
комбинаций (за счет общего множителя), и любое искажающее воздействие, которое
переводит число из разреженной области в другую, может быть обнаружено.
Избыточность данной системы в контексте надежных модулярных схем мала,
поэтому мы можем обнаруживать однократные ошибки лишь с некоторой
вероятностью (порядка 66%). Однако признак наличия ошибки проверяется простым
фактом делимости промежуточного результата вычислений на три. Поскольку
вычисления внутри предложенных умножителей идут по непересекающимся 3 и 4
вычислительным каналам соответственно, а обратные преобразователи имеют
относительно простую структуру, то используя метод проекций и немного уменьшая
динамический диапазон, можно проектировать умножители специального
назначения. Такие умножители обладают свойством обнаруживать или исправлять
одиночные ошибки, возникающие в процессе вычислений, при этом скорость работы
полученных умножителей сравнима с современными двоичными умножителями.
В рамках главы представлен метод вычисления циклической свёртки на базе
быстрого преобразования Фурье (БПФ) с использованием чисел вида
. Для
проверки эффективности предлагаемого метода было разработано устройство для
выполнения операции свертки сигналов на базе методов модулярной арифметики.
Благодаря конвейерной структуре всех стадий обработки входных данных был
достигнут высокий уровень параллелизма вычислений (рис. 8).
18
Рис. 8. Вычисление циклической свертки двух сигналов на базе теоретикочислового преобразования Фурье
В реализации использованы конвейерные устройства для преобразования из
позиционного вида в модулярный код, описанные в главе 2. Прямые и обратные
преобразователи БПФ внутри модульных каналов разработаны по конвейерной
схеме. Прямой БПФ использует алгоритм с прореживанием по частоте, обратный
БПФ прореживается по времени. Это даёт возможность строить тракт обработки без
генератора адреса для хранения промежуточных данных. Стадии обработки данных
по каждому модулярному каналу отделены друг от друга регистрами и оформлены
как отдельные этапы конвейера. Обратные преобразователи реализованы с помощью
перевода в полиадический код, как показано в третьей главе. Было реализовано
специальное программное обеспечение по подбору оснований, необходимых для
вычисления модулярной свертки.
В процессе исследования было обнаружено, что устройства для прямого и
обратного преобразования данных обладают меньшей задержкой на критическом
пути, чем модульные каналы. Таким образом, самым медленным участком всего
конвейера является канал вычисления по самому большому модулю, и тактовая
частота этого участка определяет тактовую частоту работы всего устройства.
Полученные оценки производительности представлены на рис. 9.
19
64 точки
Задержка, нс
5
4
3
2
1
0
8
9
10 11 12 13 14
Разрядность операндов
15
16
Задержка, нс
128 точек
6
Двоичная
свертка
Модулярная
свертка
4
2
0
8
9 10 11 12 13 14 15 16
Разрядность операндов
Рис. 9 Экспериментальные оценки задержки прохождения сигнала в схеме для
модулярных и двоичных циклических сверток
Из рисунка 9 видно, что использование метода теоретико-числового БПФ по
числам вида
, вместе с предложенными устройствами для прямого и
обратного преобразования, позволяет проектировать устройства вычисления
циклической свертки, показывающее значительное до 50% увеличение
производительности по сравнению с двоичными аналогами.
Далее в главе предложено устройство вычисления скалярного произведения
векторов, которое функционирует в условиях дестабилизирующих факторов и
обладает регулируемым свойством обнаруживать или корректировать как
одиночные, так и многократные ошибки. Устройство построено на базе блоков
структура, которых описана в предыдущих главах. Общая схема устройства
приведена на рисунке 10.
20
Рис. 10. Схема работы устройства для скалярного умножения векторов с коррекцией
ошибок на основе модулярной арифметики
На схеме представлено 5 этапов вычислений: прямое преобразование, блок
умножения по модулю, блок сложения по модулю, обратное преобразование и схема
выбора корректного ответа. Каждый вертикальный ряд – это одна ступень конвейера.
Рассмотрим каждый этап вычислений.
Прямое преобразование. Первый ряд вычислителей вида «KOEFF SUM Pi»
выполняет вычисление суммы S. Вычисления производятся отдельно по каждому
модулярному каналу (так как коэффициенты разные) и отдельно по каждому входу.
Второй ряд вычислителей вида «CASE BLOCK Pi» определяет, в какой интервал
попало вычисленное значение S, и выдает соответствующий ответ за счет коррекции
результата на соответствующее значение из таблицы.
Блок умножения по модулю. Блок умножения по модулю в данном случае
выполнен по индексному методу и состоит из трех этапов. На первом такте (LUT
INDEX FORWARD Pi) значение преобразуется в индекс, на втором (SUM MOD (Pi1)) выполняется сложение по модулю (Pi-1), на последнем этапе (LUT INDEX
BACKWARD Pi) выполняется обратное преобразование из индексного в модулярный
вид.
Данный преобразователь может быть замен на схожий по структуре,
выполненный по методу разности квадратов, для тех случаев, когда нечетный модуль
не является простым числом.
21
Блок сложения по модулю. В блоке сложения по модулю данные берутся из
накопителя (ячейки памяти), в которых хранится текущий результат вычисления
скалярного произведения векторов в модулярном виде, и складываются с данными
пришедшими с соответствующих входов умножителя. В первоначальном состоянии
накопитель должен быть обнулен.
Блок обратных преобразователей. Блок обратных преобразователей состоит из 4
структурно похожих частей, каждая из которых получена исключением одного из
модулей. Весь обратный преобразователь может быть структурно сокращен за счет
объединения общих частей, как показано в третьей главе. Обратный преобразователь
в скалярном умножении векторов может вызываться не каждый раз, а только в тот
момент, когда получен финальный результат в модулярном виде, или, когда
требуется проверить текущий результат на корректность. Можно включать его в
работу постоянно в случае повышенной вероятности ошибок или, когда
выполняются критически важные расчеты.
Блок выбора корректного ответа. В этом блоке каждый выход из набора
исключающих обратных преобразователей сравнивается со значением легитимного
динамического диапазона. На выход выдается значение с того входа, где оно
попадает в заданный легитимный динамический диапазон.
Последнее
исследование
в
главе
посвящено
проектированию
энергоэффективных модулярных КИХ фильтров на базе редуцированных
мультиконстантных умножителей. В данном разделе рассматриваются КИХ-фильтры
в транспонированной форме (рис. 11)
Xk
multiple constant multiplier
C1
. . .C
-1
z
N-1
...
CN
z
-1
Yk
Рис. 11. Транспонированная форма КИХ-фильтра
Главным преимуществом данной формы является наличие мультиконстантного
умножителя, который можно оптимизировать с целью уменьшения площади и/или
энергопотребления. В работе предлагается применить модулярные принципы к
проектированию
транспонированных
КИХ
фильтров
с
постоянными
коэффициентами (рис. 12). При построении модулярных мультиконстантных
22
умножителей образуется еще больше общих частей за счет уменьшения
коэффициентов фильтров. Таким образом, появляется возможность более
эффективного одновременного использования общих частей устройства, вследствие
чего уменьшается общая потребляемая мощность. Однако в данном случае
необходимо особое внимание уделять выбору набора оснований, так как прямой и
обратный преобразователи из позиционной системы счисления могут существенно
повлиять на энергопотребление.
multiple constant multiplier
Forward
converter
C1
.. .. .
.
...
...
. .. .. .
-1
-1
z
-1
z
z
z
z
-1
-1
z
-1
Reverse
converter
Рис. 12. Структура модулярного КИХ-фильтра
Анализ проведённых экспериментов показал, что потребляемая мощность КИХфильтра прямо пропорциональна площади, занимаемой им на кристалле. Кроме того,
полученные результаты демонстрируют общую тенденцию к уменьшению площади
транспонированного КИХ-фильтра и снижению его энергопотребления при
удовлетворении следующих условий:
- КИХ фильтр имеет большое число повторяющихся коэффициентов (чем
меньше уникальных, тем лучше результат);
- Разрядность коэффициентов КИХ фильтров мала (чем меньше значение, тем
лучше результат).
Если эти свойства для КИХ-фильтра не выполняются, то для сокращения
энергозатрат следует использовать каноническую форму КИХ-фильтра.
Разработанные в рамках четвёртой главы устройства являются законченными
готовыми к внедрению аппаратными блоками для базовых операций ЦОС,
построенных на базе полезных свойств модулярной арифметики и обладающих
преимуществами над позиционной реализацией аналогичных устройств.
В пятой главе рассматриваются методы вычислений, которые выполняются
параллельно на более низком уровне, нежели модулярный уровень. К таким методам
относятся вычисления на базе рекурсивной модулярной арифметики (РМА),
вычисления над комплексными числами на базе теоремы Гаусса об изоморфизме, а
23
также бимодульная арифметика, в которой используется дополнительный
вычислительный канал на базе дискретного логарифма.
Как было указано во введении помимо преимуществ, которые обеспечивает
модулярная арифметика, известны также и её недостатки:
1) большие накладные расходы;
2) представление модульных операций, через операции позиционной двоичной
арифметики, что приводит к избыточности оборудования при их реализации;
3) неравномерность модульных вычислителей по сложности и времени
выполнения операций;
4) отсутствие должной поддержки проектирования модулярных вычислителей
устройств со стороны САПР.
Первый недостаток может быть нивелирован, если проектируются достаточно
сложные вычислители. Поскольку аппаратные затраты преобразователей ограничены
проектными нормами, то увеличивая сложность устройства в целом, можно снизить
долю накладных расходов на прямые и обратные преобразователи. Тоже самое
можно сказать и о временных затратах.
Четвертый недостаток может быть преодолен использованием, так называемых, IP
генераторов – программных модулей, производящих поведенческое синтезируемое
описание на уровне RTL для устройств, выполняющих те или иные модулярные
(возможно и не модулярные) процедуры.
Каких-либо существенных способов по преодолению второго и третьего недостатков
не известно. На преодоление именно этих недостатков направлен новый подход к
проектированию модулярных вычислителей, который назван рекурсивная
модулярная арифметика.
Рекурсивная модулярная арифметика основана на принципе глубокого
распараллеливания модульных операций модулярной арифметики с основаниями
посредством редуцирования модульных операций по каждому рабочему
основанию
к модульным вычислениям по предшествующим рабочим
основаниям
– имеющим то или иное технологическое преимущество
(например, малобитным), которые будем называть базисными основаниями. При
этом упомянутая редукция допустима только при выполнении, так называемого,
условия согласования вычислительных диапазонов по каждому рабочему модулю
с вычислительными диапазонами по соответствующим комплексам базисных
оснований. Принцип согласования гарантирует, во-первых, изоморфизм кольцевых
операций по соответствующим им комплексам базисных оснований, и, во-вторых,
выполняемость обращения каждого шага рекурсии посредством перевода
соответствующих модулярных кодов по базисным основаниям в позиционный код
(например, на основе китайской теоремы об остатках или переводом их в
полиадический код).
Пусть задана система модулей
и задан некоторый вектор
. Выразим через систему субмодулей
, для
которой
и значение
строго меньше
. Тогда
и в этом случае вектор
можно представить в следующем виде:
24
,
где
элемент
заменен
на
соответствующий вектор.
Описанная процедура является основой при построении структуры РМА.
Совокупность
младших модулей
называется системой базовых
модулей, с произведением
. Все следующие модули
с произведением
называются рабочими и последовательно
выражаются через предыдущие. Модуль
выражается через вектор
. Модуль
выражается через вектор
и.т.д.
Формируется рекурсивное представление, каждого последующего модуля, через
предыдущие модули. Суммарное число модулей в системе
. Полученное
преобразование представлено на формуле и схематично изображено на рисунке 13:
X
q1
q2
...
q1
qk
p1
q2
...
p2
qk
q1
q2
...
q1
qk
p1
q2
...
qk
Рис. 13. – Представление чисел в рекурсивной системе вычетов для случая, когда
m=2, т.е. задано два рабочих модуля.
Предложенный аппарат рекурсивных модулярных вычислений дает следующие
преимущества:
1. устранение дисбаланса в операциях с малыми и большими модулями
(аппаратные и временные затраты примерно одинаковы, т.к. в идеале все
базисные модули имеют одинаковое число бит);
2. существенно более высокая степень распараллеливаемости, а значит и более
высокое быстродействие;
3. появляется регулярность (большое количество одинаковых базисных
модулей);
25
малая разрядность базисных модулей позволяет реализовать модульные
операции на комбинационных схемах, оптимизированных в базисе булевых
функций.
Основные недостатки предложенного метода заключаются в следующем:
1. аппаратная избыточность;
2. усложнение прямого и обратного преобразователей из позиционной системы
счисления (усложняются также и другие немодульные операции);
3. ограничения на выбор базисов;
4. ограничение на количество последовательных операций без обращения к
рекурсии.
Некоторые недостатки рекурсивной модулярной арифметики напрямую следуют из
того факта, что маршрут включает в себя операцию нахождения вычета довольно
больших чисел. В традиционной модулярной арифметике обычно используются
только набор из малых модулей или модулей специального вида. В качестве
дальнейшего развития рекурсивной модулярной арифметики можно использовать в
качестве модулей числа Мерсена и/или числа вида
, для которых операция
взятия остатка от деления на аппаратном уровне потребляет мало аппаратных
ресурсов. Также в главе предложены методы для выбора базисных и рабочих
оснований в рекурсивной модулярной арифметике для произвольных динамических
диапазонов.
4.
Вычислительные процессы обработки планарной информации, включая
спектральный анализ многомерных сигналов, сопряжены с вычислениями в
комплексной плоскости. В связи с этим возникает проблема ускорения подобного
рода вычислений. В качестве прототипа объекта распараллеливания в
диссертационной работе рассматриваются операции на множестве "обобщенных
комплексных чисел":
. Здесь
элементы поля Галуа
.
наделяется структурой кольца, если операции
над элементами
определять по аналогии с операциями над комплексными
числами:
При этом в роли операций
над компонентами комплекснозначных операндов
выступают аддитивные и мультипликативные операции поля
, а не
соответствующие операции поля . Элементы из
будем называть гауссовыми
числами над полем Галуа
.
Ставится задача распараллелить арифметические операции кольца
.
Традиционный подход к решению этой задачи состоит в параллельной реализации
операций над действительной и мнимой частями операндов. Нас будет интересовать
26
возможность более глубокого распараллеливания за счет перехода к более низкому
уровню вычислений.
Пусть
– фиксированное целое комплексное число
Пусть
– произвольное целое комплексное число.
Рассмотрим отношение
Здесь символом
натурального числа .
с нормой
.
обозначен вычет целого комплексного числа
по модулю
Отсюда
(1)
Поскольку числа
являются целыми комплексными числами, то первое
слагаемое разложения (1) также является целым. Обозначим его символом:
(2)
Разложение (1) представляет собой аналог теоремы Евклида в кольце целых
комплексных чисел
. При этом число
служит неполным частным, а
–
остатком от деления числа
на число .
называется вычетом числа
по
комплексному модулю , а совокупность
всех возможных вычетов чисел из
полной системой вычетов по
. Исходя из тождества (1) доказываются свойства
вычетов:
справедливы равенства:
(3)
(4)
Тождества (3) и (4) позволяют доказать, что множество
В соответствие с определением вычета (2), кольцо
поскольку:
является кольцом.
изоморфно кольцу
,
(5)
(6)
Аналогичные утверждения справедливы и для модуля
, сопряженного
модулю
. Соответственно, соотношения (1) - (6) перепишутся посредством
замены в них модуля на модуль .
27
Тем самым, при условии
кольцо
где
, в силу
китайской теоремы об остатках изоморфно прямому произведению колец
.
Каждый элемент
из
однозначно кодируется парой
или
При этом
Обратное преобразование, восстанавливающее
имеет вид:
по паре
Итак, совокупность всех пар
образует кольцо с операциями сложения,
вычитания, умножения, реализуемыми параллельным сложением, вычитанием и
умножением компонент пар по модулю , изоморфное
- кольцу гауссовых чисел
над полем
. Обозначим это кольцо символом
, и назовем его кольцом
парных вычетов. Описанную схему, в отличие от традиционного распараллеливания,
будем называть низкоуровневым или более глубоким распараллеливанием.
28
Рис. 14. (А) – традиционный комплексный модулярный умножитель, (Б) –
умножитель в кольце . X – блок умножения, - – блок сложения, % - блок
вычисления остатка по модулю.
Из приведенных на рисунке 14 структурных схем видно, что схема «Б» содержит
вдвое меньше блоков умножения, чем схема «А», и не содержит блоков сложения и
вычитания, что даст при аппаратной реализации схемы «Б» значительный выигрыш
по площади, занимаемой на кристалле. С точки зрения быстродействия анализ схем,
также показывает некоторое преимущество варианта «Б» за счет отсутствия блоков
сложения/вычитания и вызванного этим уменьшения на одну позицию разрядности
входных данных блока вычисления остатка по модулю.
Пятая глава закладывает базис для дальнейшего развития вычислительных
методов, на базе модулярной арифметики, которые обладают дополнительными
преимуществами и позволяют улучшать разработанные устройства модулярной
арифметики по занимаемой площади или быстродействию.
В шестой главе приводятся исследования применений модулярной арифметики
в реальных приложениях микроэлектроники.
Процесс разработки микроэлектронных устройств непосредственно связан с
использованием современных САПР, которые, в свою очередь, не предназначены для
работы с непозиционными арифметиками. При проектировании модулярного
устройства затрачивается достаточно много усилий на поиск оптимальной
реализации того или иного функционального блока. Устройство проектируется на
библиотечных элементах, предназначенных для эффективной реализации двоичных
операций. Однако для реализации модулярных устройств эффективным будет
использование специализированных ячеек, характерных для модулярных
вычислений. В связи с этим появилась необходимость создания специализированной
библиотеки элементов, предназначенной для проектирования модулярных устройств.
Библиотека представляет собой достаточно большой набор элементов, каждый из
которых
выполняет
уникальную
логическую
функцию.
Разработав
специализированные библиотечные элементы на транзисторном уровне, появится
возможность проектировать более эффективные модулярные устройства.
В работе рассматриваются два общих подхода к реализации модульных
сумматоров на транзисторном уровне: реализация операции сложения по модулю,
заданное арифметической формулой и реализация на основе минимизированных
булевых функций, полученных из таблицы истинности сумматора по модулю.
Сумматор по модулю, как и любую другую логическую схему, можно
представить в виде таблицы истинности. Входные переменные с размерностью
побитово представляются в виде аргументов булевой функции:
, а результат в виде выходов логической
функции
, где
29
Полученную функцию можно представить в форме ДНФ или КНФ.
Над полученной функцией можно выполнить операцию минимизации.
Булеву функцию можно представить различными способами. Следующее
решение получено по таблице истинности сумматора по модулю три, из которой
составлено уравнение и минимизировано при помощи карт Карно:
Путем применения последовательных и параллельных включений транзисторов
в САПР PSpice построена КМОП-схема, реализующая эти функции (рис. 15).
Рис. 15. Схема сумматора по модулю три, составленная путем последовательных
и параллельных включений транзисторов
Для получения схем с меньшей площадью и большим быстродействием,
разработана реализация ячеек на проходных ключах. Проходные ключи обладают
рядом важных достоинств:

снижение площади (в проходных ключах транзисторы могут быть
минимальных размеров, потому что они не выполняют функцию усиления
сигнала, Wp,n ≈ 2Lp,n);

увеличение быстродействия (в 2 раза), входные и выходные паразитные
емкости возникают только от одной пары транзисторов минимальной
площади;

отсутствие скачков выходного напряжения “0”-“1”-“0”-“1”, так как
логическое состояние или сохраняется на нагрузочной емкости или
понижается, нет “дребезга” на эпюрах выходных сигналов.
30
Вентили на проходных ключах используют при построении схем, где не
требуется инвертирование (например, мультиплексор) и в элементах XOR и XNOR,
так как данные схемы выполняются очень экономично. На проходных ключах были
собраны элементы: XOR, XNOR, 2-входовый мультиплексор и элемент
равнозначности.
По результатам работы сформированы библиотечные файлы (.lib), содержащие
элементы: инвертор, NAND2, NAND3, NOR2, AOI21, а также XOR, XNOR, 2входовый мультиплексор и элемент равнозначности. В итоге получены две
библиотеки с нормами 0,18 мкм: библиотека стандартных ячеек и библиотека ячеек
на проходных ключах.
При помощи САПР Design Compiler получены схемы сумматора по модулю три,
синтезированные рассмотренными выше методами на базе сформированных
библиотек. Наилучшие показатели по аппаратным и временным затратам на
библиотеке стандартных ячеек имеет схема на базе минимизации булевой функции.
На библиотеке с элементами на проходных ключах – реализация на функциях
равнозначности. Таким образом, для сумматора по модулю три, получены решения,
которые превосходят решения САПР Synopsys по площади и быстродействию по
сравнению с синтезом в рамках обычной библиотеки стандартных ячеек, не
оптимизированной для синтеза модулярных устройств.
Далее в главе предложен прототип модулярного процессорного ядра с
коррекцией сбоев. Приводится пример модулярного процессорного ядра (МПЯ),
которое можно использовать для решения задач цифровой обработки сигналов. За
счет избыточных модулей есть возможность либо увеличить динамический диапазон
расчетов, либо обнаруживать ошибку в расчетах, либо исправлять одиночную
ошибку в расчетах.
Для процессорного ядра предложен набор рабочих и проверочных модулей.
Приведена система команд и примеры программ в машинных кодах для решения
типовых задач ЦОС.
В следующей части главы приведен метод проектирования аппаратной
реализации нейронной сети на базе модулярной арифметики. Применение
модулярной арифметики становится оправданным за счёт предложенного метода
перевода вычислений от плавающей точки к фиксированной точке. Возможность
такого перехода экспериментально показана на предварительно обученной
нейронной сети MobileNet. При этом размерность весов, смещений и карт признаков
при которой точность сети остается на максимальном уровне, относительно
небольшая (порядка 14-16 бит). Из-за особенностей реализации современных
нейронных сетей, они хорошо согласуются с сильными сторонами модулярной
арифметики, а именно: большой объем арифметических операций сложения и
умножения в свёрточных слоях, которые занимают 90 и более процентов
вычислительных ресурсов аппаратуры; небольшой объем входных и выходных
данных, что позволяет уменьшить число прямых и обратных преобразований
31
данных; веса и смещения предварительно обученной модели можно сразу хранить в
памяти в модулярном виде. Однако есть и проблемные слои и операции. Главную
проблему представляют собой функции активации, где требуется выполнять
операции сравнения, что может быть решено за счёт эффективных алгоритмов
сравнения для модулярной арифметики или использованием функций активации,
адаптированных для модулярной арифметики. Вторая, и основная проблема, это
округление промежуточных вычислений после некоторых слоёв нейронной сети. В
современных сетях количество слоёв стало очень большим, порядка 100-200. А
размерность вычислений из-за операций умножения в свёрточных слоях от слоя к
слою растёт линейно. Отсутствие округлений потребует использовать очень большой
динамический диапазон, что снизит эффективность применения модулярной
арифметики. В работе была предложена усовершенствованная версия алгоритма для
операции округления в модулярной арифметике.
В последней части главы приводится методика для перехода от логического
представления схемы в арифметический вид. В работе был проведён синтез
арифметического полинома для системы логических функций, заданных
логическими выражениями в каком-либо базисе. Суть метода состоит в следующем.
Для логических функций от двух переменных – конъюнкции, дизъюнкции,
отрицания и т.д. синтез арифметического полинома не представляет трудностей и
может быть проведён по таблице истинности этих функций. Ниже приведены
соответствующие формулы для этих логических функций:
Здесь и далее подразумевается, что логические 0 и 1 равны
арифметическим 0 и 1.
Так как логические функции выше образуют базис, любую логическую функцию
можно представить в виде их комбинации. Для произвольной логической функции
синтез арифметического полинома представляет собой итеративную процедуру.
Пусть мы построили арифметические полиномы для функций
и
:
тогда:
Следует учитывать, что в полученных полиномах в силу того, что входящие в
них переменные принимают значения только 0 и 1, можно не обращать внимания на
степени, принимая
и соответствующим образом упрощая полином.
Полученные формулы позволяют для любой логической функции, заданной
логическим выражением или логической схемой, получить арифметический
полином. Для того чтобы получить арифметический полином для системы функций,
32
следует просуммировать полученные для каждой функции полиномы с весами,
равными степеням двойки.
Полученный полином можно использовать для защиты арифметических
вычислений на базе модулярной арифметики. Потенциальные плюсы метода по
сравнению с мажорированием:
- при достаточно больших коэффициентах в арифметическом выражении,
значения коэффициентов значительно сократятся, а часть кратных коэффициентов
обнулятся;
- для обнаружения/исправления ошибок требуется кратно увеличивать размер
схемы. В модулярном виде достаточно добавить 1 модулярный канал для
обнаружения одиночной ошибки (или полного выхода из строя одного канала) и два
модулярных канала для исправления. Например, если используется система из 6
модулей, то достаточно добавить всего один дополнительный, чтобы обнаружить
ошибку – увеличение схемы на 17%, тогда как в обычном виде схема увеличивается в
два раза;
- в большинстве случаев нам не требуется прямой преобразователь, так как все
входные переменные однобитные.
Результаты проведённых экспериментов показали, что использование
предложенного представление систем логических функций может быть затруднено
для произвольной логической схемы с большим числом входов. Однако
арифметическое представление может иметь смысл для некоторого класса схем,
например, с малым числом входов или имеющих структуру с включением
арифметических блоков. Проблема с быстрым ростом размера полиномов может
быть решена за счет применения специализированных методов для их сокращения.
В шестой главе рассмотрены различные аспекты и особенности использования
модулярной арифметики при проектировании устройств ЦОС и аппаратных
реализаций нейронных сетей, в рамках широко используемых современных САПР.
Показано как можно увеличить эффективность устройств построенных на базе
модулярной арифметики за счёт добавления специализированных элементов в
библиотеку
стандартных
ячеек.
Предложена
архитектура
модулярного
процессорного ядра. Предложены методы по защите логических схем на базе
трансляции логических функций в арифметическую форму, а также предложены
методики для использования методов модулярной арифметики в нейронных сетях
для классификации изображений с целью ускорения вычислений.
ОСНОВНЫЕ РЕЗУЛЬТАТЫ ДИССЕРТАЦИОННОЙ РАБОТЫ:
В результате диссертационной работы были предложены и обобщены методы
проектирования микроэлектронных устройств на базе модулярной арифметики для
высокопроизводительных и помехоустойчивых устройств цифровой обработки
сигналов в современных широко-используемых САПР, как для СБИС, так и для
33
ПЛИС. Была решена важная народно-хозяйственная задача по проектированию
быстрых и надёжных устройств для использования в условиях воздействия
дестабилизирующих внешних факторов.
В рамках работы предложен комплексный подход по проектированию
устройств ЦОС на базе методов модулярной арифметики. Подход заключается в
охвате большого числа разнообразных модулярных устройств разного уровня
сложности, начиная от относительно простых быстрых модулярных сумматоров и
умножителей, продолжая прямыми и обратными преобразователями, и заканчивая
большими блоками для решения отдельных задач ЦОС, в том числе прототипом
модулярного процессорного ядра с защитой от сбоев. Важно, что для большинства
рассматриваемых устройств были написаны свободно доступные параметрические
генераторы аппаратных описаний на языке Verilog. Генераторы дают возможность
разработчикам микроэлектронных устройств быстро получать аппаратные описания
устройств для требуемых условий функционирования, включая размер
динамического диапазона, произвольного набора модулей, количества ступеней
конвейера и.т.д.
В результатах диссертации были очерчены границы применимости
модулярной арифметики при синтезе микроэлектронных устройств в современных
промышленных САПР. Показано, на каких именно задачах, и начиная с каких
параметров устройств, есть смысл применять их модулярную реализацию, вместо
традиционной двоичной реализации.
Основные результаты диссертационной работы перечислены в следующих
пунктах:

Предложены методы реализации библиотеки модулярных операций с помощью
инструментов минимизации логических функций. Даная методика позволяет
строить эффективные базовые блоки модулярных устройств с точки зрения
задержки и занимаемой площади;

Разработаны различные подходы к проектированию модулярных умножителей,
которые требуют максимальной производительности для использования в
задачах цифровой обработки сигналов. Рассмотрено шесть различных подходов к
проектированию модулярных умножителей. Экспериментально показано, что
лучшим методом в общем случае для построения умножителей по модулю для
СБИС является индексный метод, а для ПЛИС – метод разности квадратов;

Предложена эффективная аппаратная реализация операции нахождения остатка
целочисленного деления для входных данных большой размерности, которая
может быть использована как прямой преобразователь для произвольного набора
модулей, а не только модулей формата
. Предложены два вариации метода
на базе интервалов и на базе таблиц. Один эффективнее по площади, другой по
скорости работы;
34

Предложена методика построения обратных преобразователей модулярной
арифметики на базе полиадического кода, обладающих свойствами
корректировать ошибки вычислений с улучшенными характеристиками по
площади и задержке сигнала. Предложенный метод не зависит от числа
оснований. Предлагаемый метод позволяет не только сократить площадь
преобразователя более чем на 30%, но и увеличить тактовую частоту конечного
устройства на 30–40%;

Предложена аппаратная реализация модулярного фильтра с конечной
импульсной характеристикой на базе теоретико-числового быстрого
преобразования Фурье. Фильтрация с конечной импульсной характеристикой
(КИХ) является базовой процедурой в различных областях цифровой обработки
сигналов. Результаты синтеза показывают, что предложенная схема по тактовой
частоте обгоняет традиционный вариант при больших разрядностях входных
данных и больших порядках фильтра, однако превышает традиционные схемы по
занимаемой площади. Модулярные фильтры обладают некоторыми
преимуществами, которые могут найти применение в КИХ-фильтрах
специального назначения;

Предложена и исследована реализация аппаратных однотактных умножителей
большой разрядности, на базе модулярной арифметики и специальных модулей,
близких к степеням 2 в параллельном виде. Базисом для рассматриваемого
устройства служат специальные наборы оснований на базе традиционного
трехмодульного набора
, а также перспективного
четырехмодульного набора оснований
. За
счёт естественной избыточности 4-модульного набора, а также наличия трёх и
четырех независимых параллельных вычислительных каналов соответственно,
появляются возможности для контроля ошибок вычислений на базе метода
проекций;

Разработан метод вычисления циклической свёртки на базе быстрого
преобразования Фурье (БПФ) с использованием чисел вида
. Для
проверки эффективности предлагаемого метода, было разработано модулярное
устройство для операции свертки сигналов на базе методов модулярной
арифметики. Благодаря конвейерному исполнению всех стадий обработки
данных, удалось достичь высокого уровня распараллеливания вычислений.
Использование предлагаемого метода теоретико-числового БПФ по числам вида
, вместе с предложенными схемами преобразователей, позволяет
синтезировать
устройства
для
вычисления
циклической
свертки,
демонстрирующие значительное увеличение производительности до 50% по
сравнению с двоичными аналогами;

Разработано новое устройство вычисления скалярного произведения векторов,
которое функционирует в условиях дестабилизирующих факторов и обладает
35
регулируемым свойством эффективно обнаруживать или корректировать как
одиночные, так и многократные ошибки;

Предложен ряд методов для интрамодулярного распараллеливания операций на
базе рекурсивной модулярной арифметики и теоремы Гаусса об изоморфизме в
случае работы с комплексными числами. Эти методы могут быть использованы в
специализированных
вычислителях,
требующих
максимальной
производительности;

Исследованы возможности по созданию модулярного процессорного ядра для
работы в условиях дестабилизирующих факторов, с коррекцией арифметических
ошибок. Разработана система машинных команд и написаны тестовые
программы для типовых задач цифровой обработки сигналов. Показано что в
случае реализации специализированных библиотек стандартных ячеек,
синтезированные модулярные устройства существенно обгоняют по
производительности аналоги, синтезированные в базе стандартных библиотек
для позиционной арифметики;

Разработан ряд онлайн генераторов аппаратных описаний для предложенных
устройств на языке Verilog HDL. Генераторы позволяют создавать модулярные
устройства для произвольных базовых модулей и условий функционирования.
Проведена проверка аппаратных описаний на корректность работы на Test Bench
и в ПЛИС;

По теме диссертации была опубликовано 30 печатных работ, в том числе 23
работы опубликовано в журналах, рекомендованных ВАК. Сделано 9 докладов
как на международных, так и на Всероссийских и конференциях. Подготовлен 1
патент на полезную модель;

Разработанные в рамках диссертации IP-блоки модулярных устройств доступны
в виде параметрических генераторов аппаратных описаний. Генераторы
находятся в свободном доступе онлайн на сайте ИППМ РАН на поддомене
отдела методологии проектирования интегральных схем: http://icdm.ippm.ru;

Разработанные в работе методы и аппаратные блоки нашли применение в рамках
проектирования микроэлектронных устройств на предприятиях АО «ПКК
Миландр», АО НПЦ «ЭЛВИС», АО "ЗНТЦ", НПК «Технологический центр» и
АО «Ангстрем».
Публикации.
следующих работах:
1.
Основные
результаты
диссертации
опубликованы
в
В.М. Амербаев, А.Л.Стемпковский, Р.А. Соловьев. Параллельные вычисления в
кольце гауссовых чисел над полем Галуа GF(p) // Проблемы разработки
перспективных микро- и наноэлектронных систем – 2012. Сб. научн. тр. - М:
ИППМ РАН, 2012, С. 517-520.
36
Амербаев В.М., Соловьев Р.А., Стемпковский А.Л. Вычислительный элемент
модулярной арифметики (№123995). №123995, приоритет от 28.06.2012,
зарегистрирован 10.01.2013
3. В.М. Амербаев, А.Л.Стемпковский, Р.А. Соловьев. Принципы рекурсивных
модулярных вычислений // Журнал «Информационные технологии», 2013, номер
2, стр. 22-27.
4. Р.А. Соловьев, В.М. Амербаев, Д.В. Тельпухов. Реализация библиотеки
модульных арифметических операций на основе алгоритмов минимизации
логических функций. // Журнал «Известия ЮФУ. Технические науки», Таганрог,
номер 7, июль 2013 ISSN 1999-9429. Стр: 221-225.
5. Roman Solovyev, Viljan Amerbaev, Dmitriy Telpuhov, Alexander Stempkovskiy.
Efficient Calculation of Cyclic Convolution by Means of Fast Fourier Transform in a
Finite Field // Proc. of 11th EAST-WEST DESIGN & TEST SYMPOSIUM (EWDTS
2013).
6. Р.А. Соловьев, Д.В. Тельпухов. Аппаратная реализация операции нахождения
остатка целочисленного деления для входных данных большой разрядности в
модулярной арифметике. // Известия высших учебных заведений. Электроника.
2013. № 4. С. 75-83.
7. A. L. Stempkovsky, V. M. Amerbaev, R. A. Solovyev, T. Y. Isaeva, E. S. Balaka, D.V.
Telpukhov. Principles of recursive Residue Number System computation. // CEET
International conference on Advances in Computing, Electronics and Electrical
Technology, Malaysia, Kuala Lumpur, pp. 174-179
8. Р.А. Соловьев, Д. В. Тельпухов. Методика выбора базисных оснований для
рекурсивной модулярной арифметики. Вычислительные технологии, Том 19 №4
2014, стр. 99-106
9. Р.А. Соловьев, Д. В. Тельпухов, В.М. Амербаев, Е.С. Балака. Разработка
аппаратного модулярного фильтра с конечной импульсной характеристикой на
базе теоретико-числового быстрого преобразования Фурье. // Проблемы
разработки перспективных микро- и наноэлектронных систем - 2014. Сборник
трудов / под общей редакцией академика РАН Стемпковского А.Л. М.: ИППМ
РАН, 2014. Часть IV. Стр. 169-172
10. Р.А. Соловьев, Д. В. Тельпухов, Е.С. Балака. Устройство для вычисления
скалярного произведения векторов с коррекцией ошибок на базе системы
остаточных классов. // Проблемы разработки перспективных микро- и
наноэлектронных систем - 2014. Сборник трудов / под общей редакцией
академика РАН Стемпковского А.Л. М.: ИППМ РАН, 2014. Часть IV. Стр. 173178
11. Р.А. Соловьев, Д. В. Тельпухов, В.М. Амербаев, Е.С. Балака. Анализ и синтез
арифметического узла проф. Поспелова Д.А. поля Галуа. // Проблемы разработки
перспективных микро- и наноэлектронных систем - 2014. Сборник трудов / под
общей редакцией академика РАН Стемпковского А.Л. М.: ИППМ РАН, 2014.
Часть IV. Стр. 179-182.
2.
37
12. Р.А. Соловьев, Д. В. Тельпухов, В.М. Амербаев, Е.С. Балака. Построение
обратных преобразователей модулярной арифметики с коррекцией ошибок на
базе полиадического кода. // Нейрокомпьютеры: разработка, применение, № 9,
2014 г. // ISSN 1999-8554. Стр. 30-35
13. В.М. Амербаев, Р.А. Соловьев, Д.В. Тельпухов, А.Н. Щелоков. Исследование
эффективности модулярных вычислительных структур при проектировании
аппаратных однотактных умножителей. // Журнал «Известия ЮФУ. Технические
науки», Таганрог, номер 7, июль 2014 ISSN 1999-9429. Стр: 248-254.
14. В.М. Амербаев, Р.А. Соловьев, Д. В. Тельпухов. Метод вычисления циклической
свертки на базе БПФ с использованием чисел Прота. // Информационные
технологии, номер 10, 2014, стр. 22-27.
15. В. М. Амербаев, Е. С. Балака, Д.В. Тельпухов, Р. А. Соловьев. Применение
информационной избыточности для повышения надежности арифметического
узла вычислительного элемента бимодульной арифметики. // Журнал "Наука.
Инновации. Технологии" №1 2015. Стр. 36-50.
16. Тельпухов Д.В., Соловьев Р.А., Рухлов В.С., Поперечный П.С. Особенности
проектирования модулярных многовходовых сумматоров с помощью
современных САПР. // Информационные технологии, №9. Том 21. 2015. Стр.
694—699
17. В.М. Амербаев, Р.А. Соловьев, Д.В. Тельпухов, П.С. Поперечный, В.С. Рухлов,
А.Н. Щелоков, А.С. Михмель. Разработка устройства для вычисления результата
операции скалярного произведения векторов на базе интрамодулярного
разложения комплексных чисел в модулярной арифметике. // Известия ЮФУ.
Технические науки. 2015. № 6 (167). С. 95-105.
18. Р.А. Соловьев, Д.В. Тельпухов, П.С. Поперечный, А.Н. Щелоков. Разработка
комплексного КИХ фильтра на базе теоремы гаусса об изоморфизме в
модулярной арифметике. // Труды конгресса по интеллектуальным системам и
информационным технологиям. 2015. С. 210-214.
19. Тельпухов Д.В., Соловьев Р.А., Балака Е.С., Рухлов В.С., Михмель А.С.
Особенности проектирования модулярных умножителей с помощью
современных САПР. // Проблемы разработки перспективных микро- и
наноэлектронных систем (МЭС). 2016. № 1. С. 249-254.
20. Е.С. Балака, И.С. Рухлов, А.Н. Щелоков, Р.А. Соловьев. Разработка и синтез
сумматоров по модулям 2^n±1 с параллельным переносом. Труды конгресса по
интеллектуальным системам и информационным технологиям. 2016. Т. 1, С. 159164.
21. Р.А. Соловьев, Д.В. Тельпухов, А.Г. Кустов. Автоматическая сегментация
спутниковых снимков на базе модифицированной свёрточной нейронной сети
UNET // Инженерный вестник дона, №4, 2017, С. 1-36
22. Тельпухов
Д.В.,
Михмель
А.С.,
Соловьев
Р.А.
Проектирование
энергоэффективных модулярных КИХ фильтров на базе редуцированных
мультиконстантных умножителей. // Инженерный вестник Дона, 2017, номер 4.
38
23. Соловьев Р.А., Тельпухов Д.В., Кустов А.Е., Щелоков А.Н. Реализация
сверточной нейронной сети на базе вычислений с фиксированной точкой в
ПЛИС // Труды конгресса по интеллектуальным системам и информационным
технологиям IS&IT’ 17, С. 198-207
24. Матюшкин И. В., Соловьев Р. А. Модель адаптивного нейрона и его аппаратная
реализация на ПЛИС // Электронная техника. Серия 3: Микроэлектроника. –
2017. – №. 3. – С. 53-61.
25. R.A. Sovovyev, D.V. Telpukhov, E.S. Balaka, V.S. Rukhlov, A.S. Mikhmel. Design
features of the RNS-based multipliers using advanced CAD // Проблемы разработки
перспективных микро- и наноэлектронных систем (МЭС). 2017. № 1. С. 66-70.
26. Соловьев Р.А., Кустов А.Е., Рухлов В.С., Щелоков А.Н., Пузырьков Д.В.
Аппаратная реализация свёрточной нейронной сети в ПЛИС на базе вычислений
с фиксированной точкой // Журнал «Известия ЮФУ. Технические науки»,
Таганрог, Южный федеральный университет, №7 (192), июль 2017, с. 186-197
27. Р.А. Соловьев, А.Г. Кустов, В.С. Рухлов. Методика реализации нейронной сети
для распознания рукописных цифр в FPGA на основе вычислений с
фиксированной точкой. // Проблемы разработки перспективных микро- и
наноэлектронных систем (МЭС). 2018. № 1.
28. Р. А. Соловьев, А. Н. Щелоков, Д. В. Тельпухов, Е. С. Балака, В. С. Рухлов, А. С.
Михмель. Эффективная реализация операции взятия остатка от деления для
большой размерности входных данных. // Труды конгресса по интеллектуальным
системам и информационным технологиям. 2018.
29. Р.А. Соловьев, А.Г. Кустов, Д.В. Тельпухов, В.С. Рухлов. Прототипирование
высокоскоростной нейронной сети в ПЛИС для классификации изображений
видеопотока. // Cloud of science. – 2018. – Т. 4. – №. 4.
30. Соловьев Р.А., Тельпухов Д.В., Балака Е.С., Рухлов В.С., Михмель А.С.
Аппаратная реализация операции нахождения остатка от деления для входных
данных большой разрядности на основе блоков редукции и коррекции //
Инженерный вестник Дона, 2018, номер 2.
39
Документ
Категория
Без категории
Просмотров
4
Размер файла
1 903 Кб
Теги
модулярных, структура, вычислительной, сигналов, микроэлектроника, обработка, базе, устройства, цифровой
1/--страниц
Пожаловаться на содержимое документа