автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.05, диссертация на тему:Аппаратная реализация кодеков Рида-Соломона на плис на основе высокоуровневых параметризованных описаний функциональных узлов
Автореферат диссертации по теме "Аппаратная реализация кодеков Рида-Соломона на плис на основе высокоуровневых параметризованных описаний функциональных узлов"
На правах рукописи
ТАЙЛЕБ ур. МАЗУЗ Незхат
АППАРАТНАЯ РЕАЛИЗАЦИЯ КОДЕКОВ
РИДА-СОЛОМОНА НА ПЛИС НА ОСНОВЕ ВЫСОКОУРОВНЕВЫХ ПАРАМЕТРИЗОВАННЫХ ОПИСАНИЙ ФУНКЦИОНАЛЬНЫХ УЗЛОВ
Специальности: 05.13.05 - Элементы и устройства вычислительной
техники и систем управления
05.13.12 — Системы автоматизации проектирования (по отраслям)
АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата технических наук
.0 4.0КТ 2012
Москва-2012
005052400
Работа выполнена в Федеральном государственном бюджетно:
образовательном учреждении высшего профессионального образовани
«Национальный исследовательский университет «МЭИ» (ФГБОУ ВПО «НИ" МЭИ») на кафедре Вычислительных машин, систем и сетей.
Научный руководитель: кандидат технических наук, доцент
Поляков Аркадий Константинович
Официальные оппоненты: Плоткин Арнольд Леонидович, доктор технических
наук, профессор, ЗАО «Интел А/О», руководитель университетской программы
Смирнов Николай Алексеевич, кандидат технических наук, профессор, ФГБОУ ВПО «МГТУ МИРЭА», профессор кафедры Вычислительной техники
Ведущая организация: ФГБУН Институт проблем управления
им. В.А. Трапезникова РАН
Защита состоится 26 октября 2012 г. в 16 часов 00 минут на заседани диссертационного совета Д 212.157.16 при ФГБОУ ВПО «НИУ МЭИ» по адрес} 111250, г. Москва, Красноказарменная улица, д. 17, ауд. Г-306.
С диссертацией можно ознакомиться в библиотеке ФГБОУ ВПО «НИУ МЭИ».
Отзывы на автореферат в двух экземплярах, заверенные печатью организации просим направлять по адресу: 111250, г. Москва, Красноказарменная ул. д. 14 Ученый совет МЭИ.
Автореферат разослан » г^^^Уа 2012 г.
Ученый секретарь
диссертационного совета Д 212.157.16, к.т.н., доцент
Чернов С.А.
Общая характеристика работы
Актуальность работы. Одним из путей повышения помехоустойчивости систем передачи и обработай данных является использование помехоустойчивого кодирования и в частности циклического кода Рида-Соломона (РС-код). Реализующие его устройства (РС-кодеки — обобщенное название РС-кодеров и РС-декодеров) применяются, например, в цифровом телевидении, в спутниковой и сотовой связи, при передаче данных по телефонным каналам, в системах хранения информации на магнитных и оптических дисках, в оптоволоконных сетях, например, сетях стандарта ITU-T G.709 (коротко G.709). Используемые в высокоскоростных системах реального времени РС-кодеки представляют собой отдельные устройства, в которых применяются различные методы повышения быстродействия: параллелизм, конвейеризация и т.д. Проектирование РС-кодеков и реализация их в виде СБИС или на ПЛИС достаточно сложная задача. При разработке аппаратуры РС-кодеков с помощью современных САПР приходится находить баланс между:
• качеством проектов как объектов интеллектуальной собственности: уровнем описания проекта (высокоуровневое/низкоуровневое), повторнопригодностью проекта, параметризованностью (настраиваемостъю на различные РС-коды и независимость от САПР и элементной базы конкретной фирмы) их описаний;
• техническими характеристиками (аппаратными показателями) конечного продукта, получаемого при реализации проекта «в железе»: временными (Т — максимальной тактовой частотой работы устройства, JI — латентностью определяемой как время в тактах от поступления символа на вход кодека до его выхода из кодека, П — пропускной способностью, числом символов РС-кода, обрабатываемых в заданную единицу времени, например в секунду), С — сложностью аппаратуры (количеством триггеров, логических элементов -LUT и блоков памяти, используемых в микросхеме ПЛИС для реализации данного устройства), мощностными (рассеиваемой мощностью), надежностными и др.;
• экономическими характеристиками, которые определяются временем и трудоёмкостью процесса проектирования, требованиями к квалификации проектировщиков, к инструментальным ЭВМ, САПР и т.п.
Возможны разные подходы к проектированию РС-кодеков. Первый путь-использовать готовые IP-ядра. Можно приобрести у сторонних фирм проект РС-кодека в виде объекта интеллектуальной собственности (IP-ядра) или создавать его с помощью генераторов ядер современных САПР. Преимущество этого пути — резкое уменьшение сроков и трудоёмкости процесса проектирования. Недостаток — закрытость для пользователя описания ЕР-ядра и невозможность его изменения. Отметим ещё, что в Интернете имеется несколько открытых и бесплатных проектов РС-кодеков в виде высокоуровневых HDL-oписаний, но их качество невысокое и такие проекты в основной массе не параметризованны (рассчитаны только на определенный РС-код). Второй путь — собственная разработка HDL-описания
проекта. Этот путь позволяет приобрести опыт коллективу проектировщиков и получить повторнопригодные описания. Недостатки такого подхода — высокая трудоёмкость и большие сроки проектирования, повышенные требования к квалификации проектировщиков и т.п. В этом случае важен выбор уровня HDL-описаний проектов, выбор методологии и технологии проектирования, наличие наработок в виде наборов HDL-описаний типовых функциональных узлов и блоков PC-кодеков. Кроме того, помимо разработки HDL-описаний самих РС-кодеков больших усилий требует расчёт параметров настройки, используемых в HDL-описаниях блоков PC-кодеков и подготовка эталонных данных, используемых при верификации проектов методом имитационного моделирования.
В последнее время отмечается спрос на многоканальные PC-кодеки (Multichannel codecs). Например, вариант OTU-2 международного стандарта передачи данных в оптоволоконных сетях ITU-T G.709, работающих со скоростью 10.709 Гбит/с предполагает в канале передачу с перекрытием 16-ти кодовых слов. Соответственно стоит вопрос о создании соответствующих PC-кодеков, в организации которых актуальные вопросы параллелизма, конвейеризации и временного мультиплексирования.
Учитывая вышесказанное, представляются актуальной задача анализа способов организации PC-кодеков, создание методики проектирования таких устройств на основе высокоуровневых параметризованных HDL-описаний их типовых функциональных узлов и блоков.
Основная цель работы — разработка средств проектирования PC-кодеков на базе ПЛИС в виде подмножества высокоуровневых параметризованных HDL-описаний типовых функциональных узлов и блоков PC-кодеков, а также практическая проверка их эффективности на примере проекта многоканального РС-кодека для оптоволоконных сетей связи стандарта G.709.
В число задач, которые были поставлены и решены в работе вошли:
1. исследование и анализ алгоритмов основных арифметических операций в полях Галуа и операций над полиномами, коэффициенты которых принадлежат этому полю, определение состава и функций типовых функциональных узлов, эффективно реализующих их аппаратно;
2. анализ и выбор вариантов алгоритмов типовых блоков PC-кодеков с точки зрения оценки эффективности их аппаратной реализации;
3. исследование и анализ особенностей схемотехники ПЛИС и различных подходов к автоматизированному проектированию устройств на ПЛИС применительно к реализации типовых функциональных узлов и блоков РС-кодеков;
4. исследование и разработка библиотеки высокоуровневых параметризованных Verilog-описаний типовых функциональных узлов и блоков РС-кодеков, учитывающих специфику операций в полях Галуа и особенности элементной базы ПЛИС;
5. разработка библиотеки MATLAB-функций, предназначенных для генерации значений параметров, используемых в HDL-описаниях узлов PC-кодеков и для генерации эталонных значений данных, используемых при верификации HDL-описаний PC-кодеков методом имитационного моделирования;
6. применение предложенных средств автоматизации проектирования и исследование их эффективности на примере разработки проектов одноканальных и многоканальных PC-кодеков с высокой пропускной способностью применительно к системам оптоволоконной связи стандарта G.709.
Объектом исследования являются PC-кодеки, их аппаратная реализация в элементном базисе ПЛИС типа FPGA, высокоуровневые параметризованные описания функциональных узлов и блоков PC-кодеков, методы и средства автоматизации проектирования PC-кодеков с использованием HDL-библиотек высокоуровневых описаний их типовых функциональных узлов и блоков.
Предметом исследования является структура и алгоритмы функционирования PC-кодеков, их аппаратная реализация в элементном базисе ПЛИС и средства автоматизации проектирования PC-кодеков на базе библиотек высокоуровневых описаний типовых узлов и блоков.
Используемыми методами и средствами исследования являются: метод имитационного, моделирования, математический аппарат полей Галуа, помехоустойчивые коды Рида-Соломона, алгоритмы кодирования и декодирования, в том числе алгоритмы функционирования отдельных блоков этих устройств — Берлекэмпа-Месси и Евклида, и также формула Форнея. В качестве инструментария применён пакет прикладных программ MATLAB, ориентированный на решение задач математических вычислений, язык описания аппаратуры HDL Verilog, САПР ПЛИС фирмы XILINX, САПР и пакет моделирования Questasim фирмы Mentor Graphics.
Научная новизна диссертации заключается в:
1. исследовании и анализе различных алгоритмов выполнения арифметических операций в поле Галуа и создании библиотек высокоуровневых параметризованных HDL-описаний типовых функциональных узлов, эффективно реализующих эти операции в элементном базисе ПЛИС типа FPGA;
2. исследовании и анализе типовых алгоритмов блоков PC-кодеков, оценке эффективности вариантов их схемной реализации и создании библиотеки высокоуровневых параметризованных HDL-описаний типовых блоков РС-кодеков, эффективно реализуемых на ПЛИС типа FPGA;
3. разработке методики автоматизированного проектирования PC кодеков на базе расширяющегося подмножества высокоуровневых параметризованных HDL-описаний типовых функциональных узлов и блоков;
4. исследовании способов организации многоканальных декодеров и создании
HDL -описания проекта многоканального PC-декодера эффективно аппаратно реализуемого на ПЛИС типа FPGA. Его пропускная способность в два раза превышает пропускную способность известных аналогов.
Достоверность выводов и рекомендаций, сформулированных в диссертации, обусловлена корректной постановкой задач и данными, полученными в результате имитационных и физических экспериментов на отладочных платах ML405 и SP605 фирмы XILINX.
Научные положения, выносимые на защиту:
1. способ высокой параметризации HDL-описаний проектов типовых функциональных узлов и блоков РС-кодеков;
2. методика автоматизированного проектирования PC-кодеков на базе наборов высокоуровневых параметризованных HDL-описаний их типовых функциональных узлов и блоков;
3. подмножество высокоуровневых HDL-описаний типовых функциональных узлов и блоков PC-кодеков, эффективно аппаратно реализуемых в логическом базисе ПЛИС типа FPGA. Эти описания могут быть использованы не только при разработке PC-кодеков, но и как базовые компоненты в проектах систем обработки информации, основанных на применении полей Галуа. Библиотека не имеет известных аналогов;
4. проект многоканального декодера для оптоволоконных сетей стандарта G.709 отличающегося от известных более высокой пропускной способностью.
Практическая значимость. Предложенная методика позволяет уменьшить его сроки и трудоёмкость, повысить качество проектов. Эффективность разработанной методики продемонстрирована на примере проектирования многоканального РС-декодера стандарта G.709 со скоростью передачи до 51 Гбиг/с.
Показана эффективность предложенных решений путём сравнения полученных результатов с известными аналогами. Авторский проект многоканального РС-декодера обладает более высокой пропускной способностью, чем наилучший из известных, построенный на базе IP-ядер фирмы XILINX.
Внедрение результатов исследований. Результаты исследования используются в учебном процессе кафедры ВМСиС МЭИ в курсах «Инженерное проектирование и САПР». Предполагается их использовать и в курсе «Цифровая обработка сигналов».
Апробация результатов работы. Основные положения диссертации докладывались на следующих конференциях и семинарах: научный семинар, посвященный памяти д.т.н., профессора З.М. БЕНЕНСОНА, ВЦ РАН, 2008; тринадцатая и четырнадцатая международная научно-техническая конференция студентов и аспирантов МЭИ «Радиоэлектроника, электротехника и энергетика», МЭИ (ТУ), 2007 — 2008.
За доклад «Реализация библиотеки арифметических операций над полиномами в поле Галуа на ПЛИС типа FPGA» в 2008 г. автор получил почетный диплом 1 степени.
Публикации автора по теме диссертации. Основные результаты работы, опубликованы в 6 статьях и докладах на конференциях, в том числе одна статья опубликована в журнале «Вестник МЭИ», входящий в перечень ВАК РФ.
Структура н объём диссертационной работы. Работа состоит из введения, четырёх клав, заключения, списка информационных источников из 79 наименований и 3 приложений. Основная часть работы изложена на 177 страницах машинописного текста, содержит 70 рисунков, 27 таблиц. Общий объём диссертации 210 страниц.
Существо и логика проведенных исследований
Для определения состава и выбора алгоритмов типовых функциональных узлов, необходимых для аппаратной реализации РС-кодеков, рассмотрены арифметические операции в поле Галуа и варианты алгоритмов их выполнения. Эта область, с точки зрения аппаратной реализации до настоящего времени исследована мало. По аналогии с временами начального развития вычислительной техники, когда например варианты алгоритмов умножения имели имена своих создателей (алгоритм умножения Бута и др.) известны разные алгоритмы умножения в поле Галуа (алгоритм Мастровито и др.) и если в современных ПЛИС типа РРЭА имеются встроенные блоки умножителей чисел, то появление их аналогов для полей Галуа ожидается лишь в будущем. В работе проанализированы также известные алгоритмы кодирования и декодирования РС-кодов (гл. 1) с точки зрения оценки области эффективности их аппаратной реализации (задержка критического пути схемы и количество используемых типовых узлов). На базе проведенных исследований и с учётом специфики элементной базы ПЛИС (гл. 2), особенностей языков описания аппаратуры и САПР ПЛИС разработаны высокоуровневых параметризованные НБЬ-описания (варьируется разрядность, используется разная аппаратная реализация и т.п.) узлов и блоков РС-кодеков. Для генерации эталонных данных, необходимых для верификации этих описаний разработана библиотека функций на языке МАТЪАВ. После верификации описаний типовых узлов и блоков и синтеза в элементном базисе ПЛИС типа РР(ЗА были исследованы их аппаратные характеристики и определены области их эффективного использования (га. 3) для разных РС-кодов. Публикации по таким НБЬ-описаниям узлов и блоков для проектирования РС-кодеков отсутствуют. Для проверки эффективности применения разработанных узлов и блоков был спроектирован многоканальный РС-декодер для высокоскоростных оптических каналов связи, по многим параметрам превосходящий известные аналоги (гл. 4).
Содержание диссертации.
Во введении обоснован выбор темы диссертации, показана её актуальность, определены цели, задачи и методы исследования, рассмотрены вопросы научной новизны и практической значимости результатов диссертации, перечислены основные положения, выносимые на защиту. Представлена структура диссертации.
В первой главе рассмотрены известные понятия из области теории полей Галуа СР(2Ш), ще: параметр ш - число разрядов в двоичном представлении символа поля. Представлены математические описания арифметических операций в полях Галуа над элементами (сложения, умножения, инверсии) и над полиномами,
коэффициенты которых принадлежат этому полю. Рассмотрены коды Рида-Соломона, рассмотрены алгоритмы кодирования и декодирования данных. РС-код определяют параметры: (п, к, т, р(х), Ь, О(х)), где п=2т-1 — общее число символов в кодовом слове, к — общее число символов в кодовом слове (1=(п-к)/2 — максимальное число корректируемых кодом ошибок), р(х) — примитивный полином, задающий порядок следования элементов поля, Ь — начальный элемент порождающего полинома й(х). Рассмотрены известные алгоритмы кодирования и декодирования данных с точки зрения возможности их аппаратной реализации.
Схема рис. 1 иллюстрирует аппаратную реализацию алгоритма кодирования (РС-кодера), в которой используется множество регистров й, применяемых в качестве элементов памяти. Сумматоры и умножители выполняют операции в поле Галуа. Типовые узлы в данном случае это т-разрядный умножитель, сумматор, мультиплексор 2-1 и регистр.
В отличие от кодирования, процесс декодирования РС-кода является более сложной задачей. Процесс декодирования делится в несколько этапов (1-5), реализуемых соответствующими блоками рис. 2 (текст в прямоугольниках поясняет функции блоков РС-декодера).
Рис. 2. Основные блоки типичного РС-декодера
В ходе анализа алгоритмов блоков РС-декодера и способов их аппаратной реализации и в частности, реализации его второго блока (на рис. 2 это блок № 2 КЕБОЬУ — решение ключевого уравнения) были рассмотрены три версии аппаратной реализации алгоритма Берлекэмпа-Месси (ВМ): ШМ, пВМ, ШВМ, алгоритм Евклида и алгоритм Пигерсона-Горенштейна-Цирлера. Последний далее не рассматривался из-за того, что его аппаратная реализация становится слишком сложной при Г — число ошибок больше 3. Получены оценки сложности схем,
реализующих алгоритмы в условных единицах (типовые функциональные узлы) и оценки задержек критического пути, сделан вывод о предпочтительности применения для высокоскоростных РС-декодеров алгоритма ВМ версии ШВМ, который отличается регулярностью его структуры.
Показано, что сложность аппаратуры РС-кодеков и величина задержки критического пути в основном определяется параметрами функциональных узлов, реализующих арифметические операции в полях Галуа: операции умножения, инверсии и возведения в степень. К типичным последовательностям этих операций относится умножение со сложением и запоминанием (см. рис. 1). Типичный подблок-РС-кодеков линейка (сдвиговый регистр) из (п-к) таких узлов (см. рис. 1). В блоке вычисления синдрома и решения ключевого уравнения (см. рис. 2) также выделены соответствующие подблоки. Полученные теоретические оценки количества типовых узлов и величины задержек критического пути в схемах устройств РС-кодеков и их блоков, представлены в табл. 1. Эта оценки экспериментально проверены в главе 3.
Таблица 1
Оценка количества типовых узлов и величины задержки критического пути блоков
РС-кодека
Блок/Узел Add Mult Reg Mux Задержка критического пути
РС-кодер 2t 2t 2t 2
Р, о SCOMP 2t 2t 2t 0 T.di+Tmult
о KESOLV(RiBM) ЗН-1 6t+2 6t+2 3t-t-l Т«и+ТтШ
5 в- FOURCH 3t-3 llog2(2t+b)J +nbr,+2t+2m-3 2t-l 2t-l max(Tta», Тро»)
Итого РС-декодера 8t-2 lIogl(2t+b)J +nbr,+12t+2m-l 10t+l 5t max (Tu», Тр.»)
Примечание — в столбцах Add, Mult, Reg, Mux — количество узлов (сумматоров, умножителей, регистров и мультиплексоров). ТкиТщии, Тщ, — задержки критического пути соответствующих узлов, nbri — количество единиц в двоичном представлении числа (2t+b). В зависимости от параметров PC-кода (m, t, b), задержка PC-декодера равна Т1пу=(2т-3)-Т11ш!1 или TpoW= [Iogj(2t+b)]+nbr,-l -T^.
Во второй главе рассмотрены ПЛИС FPGA фирмы XILINX. Дано описание основных программируемых (настраиваемых пользователем) блоков трёх семейств ПЛИС: VIRTEX-4, VIRTEX-6, SPARTAN-6. Представлены этапы проектирования устройств с применением системы автоматизированного проектирования САПР ПЛИС. Обоснован выбор HDL — язык Verflog для разработки проектов РС-кодеков. Показана эффективность использования высокоуровневых описаний проектов и использования элементов блочной памяти ПЛИС типа FPGA для табличной реализации функций. Отмечается важность этапа функциональной верификации и построения проверочных тестов. Это объясняет целесообразность разработки библиотеки MATLAB-функций, предназначенных для расчёта эталонных данных,
используемых при верификации проектов методом моделирования.
Для оценки влияния способа проектирования и стиля HDL-описаний проектов на качество получаемых при синтезе схем приведен эксперимент с проектами относительно простого устройства — трёхвходового многоразрядного сумматора. Предложены и исследованы 7 вариантов его HDL-описаний. Эксперимент показал недостатки низкоуровневого описания (варианты 1-2 — схемы на основе элементов серии КР1533), плюсы и минусы поведенческого описания (варианты 3-5) и описания слишком привязанного к элементной базе (варианты 6-7) специального типа ПЛИС. Вариант 5 представляет поведенческое описание по формуле (Cout, S)=A+B+C+Cin, где: А, В, С — входные сигналы, Cin — входной перенос, S — сумма, Cout — выходной перенос. Вариант 6 использует описание варианта 5 и, при синтезе которого в САПР активизирована опция «USE DSP48» с целю использования модули XtremeDSP48 — аппаратное ядро, встроенное в VTRTEX-4 вместо сумматора, реализованного на основе LUT. Вариант 7 проекта сумматора использует экземпляр модуля XtremeDSP48, который реализует операцию сложения в виде двух-каскадного конвейера (Cout, S)=DSP48(A, В, С, Cin). Результаты реализации семи проектов трёхвходового многоразрядного сумматора на ПЛИС типа FPGA на микросхеме VIRTEX-4FX12-10fft668, представлены в табл. 2.
Таблица 2
Результаты реализации семи проектов многоразрядного сумматора на ПЛИС
Вар.1 Вар. 2 Вар. 3 Вар. 4 Вар. 5 Вар. 6 Вар. 7
Количество LUT 114 185 192 192 49 0 0
Количество модулей XtremeDSP48 0 0 0 0 0 3 2
Задержка (не) 32.25 27.80 154.55 49.01 13.16 16.41 3.02
Примечание — LUT (Look-Up Table) это простейший логический элемент в ПЛИС, реализующий любую логическую функцию (с 4 или 6 входами и выходами), задаваемую при программировании ПЛИС.
По данным табл. 2 вариант 7 имеет наименьшую задержку. Однако более общим и эффективным решением является высокоуровневое поведенческое описание варианта 5, так как путём простого указания синтезатору о целесообразности применения модуля Х1гетеОЗР48 разработчик позволяет использовать этот блок (вариант 6) и уменьшить количество ШТ.
Анализ результатов позволяет предложить следующие рекомендации:
• для проектов, требующих максимального быстродействия, нужно эффективно использовать особенности конкретной микросхемы ПЛИС и САПР. Однако переносимость проектов на другие типы ПЛИС при этом низкая;
• если требования к быстродействию проектируемых устройств не столь критичны, то лучше использовать высокоуровневые поведенческие описания (вариант:5). Мобильность проектов при этом высокая;
• если перед проектировщиком стоит требование максимального использования
и
старой документации в виде низкоуровневых описаний устройств на микросхемах СИС, то при римейке проекта на новой элементной базе ПЛИС следует заранее учесть возможность существенного снижения его схемотехнических показателей по сравнению с вариантом поведенческого описания.
Эти положения использовались при проектировании ШЭЬ-описаний типовых узлов и блоков РС-кодеков.
В третьей главе отмечено, что проектирование РС-кодеков традиционным способом (узлы разрабатываются каждый раз заново под заданный РС-код и т.д.) уже не решает проблему массового создания устройств данного класса в приемлемые сроки и с необходимым уровнем качества. Целесообразно иметь библиотеку параметризованных (с параметрами: п, к, т, Ь, р(х), 0(х)) нЪь-описаний типовых функциональных узлов, блоков и подблоков данного класса устройств.
Определим следующие параметры проектов РС-кодеков:
1. множество внешних входных параметров, которые задаются в начале проектирования: а1 — диапазон параметров РС-кодов (п, к, т, Ь, р(х), С(х)), а2 — диапазон семейств ПЛИС, а3 — целевые показатели разработанного устройства;
2. множество внутренних, варьируемых параметров определяет способы аппаратной реализации узлов арифметических операций в полях Галуа, это параметры блоков и подблоков РС-кодека, и общесистемные параметры. Их общее число 9 (от XI до х?);
3. множество внешних выходных параметров, определяющих качество полученного проекта РС-кодека (см. стр. 3). Достижение высоких внешних информационных показателей проектов РС-кодеков является одной из главных целей предлагаемой методики их проектирования.
Итак проект РС-кодека характеризуется:
- множеством внешних входных параметров А = {аь аг, аз};
- множеством внутренних варьируемых параметров X = {х1.....Хд};
- множеством внешних выходных параметров У = { У^Уг^Уз} таких, что:
У1 = ^ (аь а2, а3, хь ..., х,) ^еУ (1)
где ^ - некоторые, априори неизвестные функции, показывающие зависимость внешних выходных параметров от внешних входных и внутренних параметров РС-кодека.
- критерий качества проекта т.
7 = 0(а1,а2, а3, XI...., х9) (2)
где в — априори неизвестная функция качества, показывающая связь г с внешними входными и внутренними параметрами.
Задача проектирования формулируется так: для заданного диапазона значений входных параметров ai, аг, аз и заданных ограничений на значения внешних выходных параметров Y необходимо найти такие значения внутренних параметров xi,..., Х9 при которых будут выполнены следующие требования:
z = G(ai. а2, аз, Xi,..., х9) = extrem G(ai, а2, а3, хь..., х9) х,еХ, и
yj = Fj(ai, а2, а3, х,.....х,) < у/, y,e=Y (3)
Уточненную постановку задачи можно варьировать в зависимости от цели проектирования. Здесь в качестве примера можно привести две разные цели:
1. разработка минимальных по затратам аппаратуры PC-кодеков с реализацией проекта на самых простых и дешевых микросхемах ПЛИС;
2. проектирование быстродействующих PC-кодеков. В этом случае решения должны быть направлены на получение, например, наивысшей максимальной пропускной способности устройства. Достижение этой цели во многом определяется алгоритмическими и проектными решениями, выбором быстродействующих узлов и блоков из HDL-библиотеки, а также дорогих высокоскоростных ПЛИС.
Предлагаемая методика проектирования PC-кодеков рекомендует проектировщикам создавать высокоуровневые, параметризованные (параметры: п, к, m, b, р(х), G(x)), повторнопригодные и модульные HDL-описания проектов РС-кодеков с максимальным использованием высокоуровневых параметризованных HDL-описаний типовых функциональных узлов и блоков. В числе инструментальных средств поддержки этой методики — библиотека HDL-описаний типовых узлов и блоков PC-кодеков (коротко HDL-библиотека) и библиотека MATLAB-функций (коротко MATLAB-библиотека) для их верификации. В свою очередь, HDL-библиотека строится по таким же принципам и включает в себя подмножество параметризованных (параметры т, р(х)) описаний функциональных узлов, выполняющих арифметические операции в поле Галуа (в том числе операции над полиномами с коэффициентами, принадлежащими этому полю) и параметризованных описаний таловых подблоков и блоков PC-кодеков (например узлов, представленных на рис. 1) или блоков SCOMP, KESOLV, FOURCH РС-декодеров, включающих не только операционные, но и управляющие подблоки (см. рис. 2). MATLAB-библиотека применяется для вычисления параметров, используемых в HDL-описаниях блоков PC-кодеков и вычисления промежуточных результатов-эталонов, используемых при верификации HDL-описаний РС-кодеков. Для автоматизации работы с MATLAB-библиотекой разработан графический интерфейс, который упрощает процесс еб использования.
Принцип высокой параметризации HDL-описаний функциональных узлов и блоков предполагает возможность настройки использующих их проектов не только на разные PC-коды но и на разные схемотехнические решения. В
настоящее время при проектировании с применением HDL и САПР в структурных HDL-описаниях проектов обычно используются параметризованные библиотеки типовых N-разрядных функциональных узлов (компонентов, макрофункций), в
которых N - параметр настройки, значение которого по умолчанию задано в ШЭЬ-описании узла, а нестандартные указываются в конкретизациях компонентов. В НОЬ-описаниях типовых узлов и блоков РС-кодеков число таких параметров может быть увеличено, за счёт чего достигается простота настройки проекта на разные РС-коды. Например для узла умножения это параметры т и р(х), определяющие поле Галуа. Другой пример — в параметризованном описании РС-кодера набор параметров л, к, т, Ь, й(х) определяет используемый РС-код.
Следующим шагом в направлении повышения уровня настраиваемости НБЬ-описаний проектов является возможность простого изменения функции узлов и изменения способа их аппаратной реализации (максимальное быстродействие или минимум аппаратуры и т.п.). Например для умножителя это может быть вариант простого, ускоренного или конвейерного способа его реализации.
В языке УШ)Ь подобное свойство НБЬ-описаний обеспечивается возможностью иметь для одного и того же объекта проекта множество архитектур. Простой сменой в описании конфигурации (сопй{£игайоп) проекта одной архитектуры узла на другую проектировщик обеспечивает изменение способа аппаратной реализации умножителей во всем проекте РС-кодека или его части. В языке Уеп^ подобное свойство Ш)Ь-описания проекта обеспечивается блоком конфигурирования (аи^) путём подключения разных библиотек, содержащих разные по способу аппаратной реализации модели одноименных узлов (модулей). Но все эти средства предполагают одинаковые интерфейсы у разных вариантов одноименных компонентов проекта. Ещё большую гибкость НБЬ-описаний проектов можно было бы добиться при обеспечении возможности простой замены одних компонентов на другие, отличающиеся по именам и составу портов. В ходе решения этой задачи была обеспечена высокая параметризация описаний узлов и блоков, являющаяся базовым элементом предложенной методики проектирования РС-кодеков. Задача решалась с использованием средств препроцессора языка Уеп1о§ (директивы периода компиляции) и особенностей синтезаторов САПР.
Последовательность этапов процесса автоматизированного проектирования РС-декодера и решаемые на них задачи вместе с предлагаемыми средствами их поддержки, иллюстрируется на рис. 3 в виде ШЕР-диаграммы. Каждый прямоугольник описывает проектное действие или функцию. Номер в правом нижнем ушу прямоугольника определяет номер этапа проектирования. Левая стрелка каждого прямоугольника указывает входные данные, правая — выходные данные, верхняя — информация, управляющая функцией и нижняя — механизм или ресурс используемый данной функцией. Отметим, что в прямоугольнике 2 нужно: вычислить параметр q (параметр умножителя поля Галуа, соответствующий коэффициентам примитивного полинома р(х) и таблицы инверсии и возведения в степень (21+Ь) элементов поля Галуа.
Для РС-кодера выполняются те же этапы проектирования, но в прямоугольнике 2 нужно вычислить параметры: ч и б — коэффициенты порождающего полинома
ом.
Параметры PC-код»
Проверить
3 Jmsl6
n>k ыо 2-t-L 1 П
1
(n, k, п, B, p(x))
Вычислить параматрыи
таблицы, ИСПОЛЬауаама в описании РС-Акаявр*
2
Изменить HDL-описаниа РСлдакодара при наличии ошибок
Выбрать
1*4 структуру
^ РС-лмад|ра з
МАПАВ-биВпиотана
Проектировщик i
Наличие подходящих блоков ■ HDL-бмблиотеке
I Сравнение результатов
о
Составить описание PC-декодера мэ уалов и блоков НОЬбмблиотею 4 '
е эталонным!
1®
Верифицировать про« кт РС-даиодера моделированием
Б
HDL-gHSnMqrtit»
©
САПР Queetaslm
Конфигурации САПРХЗТ
Конфигурация САПР ISE
Конфигурации САПР Chlpteopa
МАП-АЖибпиатеш.
©
Синтезировать проект РСтдекодера
в
Реапиеовать
микросхеме
ПЛИС
©
Запрограммировать
ПЛИС и отладить проект на отладочной плата
САПР PtanAhaad
I
Устройство PC-декодера готово к применению
САПР Chlpaeope
Проектировщик WTWUniHTIIH
О - ОДнасанальный (L-1) или многоканальный^ > 1) РС-д«кодер CD ■ HDL-описание PC-декодера
© -Функциональнопроваранноа HOL-описаниа РС-декодара © -Логическая схама РС-йакояара
- Лтройстао РС-декодера
Рис. 3. IDEF-диаграмма процесса автоматизированного проектирования PC-кодеков с использованием предлагаемой методики
На рис. 3 можно выделить следующие этапы:
1. структурный этап (прямоугольники 1-4) включает:
а. проверку параметров PC-кода (n, k, m, Ь) с заданным ограничением в
прямоугольнике 1, расчёт необходимых параметров и таблиц,
используемых в узлах и блоках PC-кодека и зависящих от параметров РС-
кода (n, k, m, Ь, р(х)) с помощью MATLAB-библиотеки;
б. выбор структуры PC-кодека, анализ и оценка вариантов: одноканальный, многоканальный и т.п.;
в. разбиение проекта PC-кодека на блоки и модули по основным алгоритмам и функциям, оценка вариантов алгоритмов с точки зрения эффективности их аппаратной реализации, анализ возможности использования типовых узлов и блоков PC-кодека из HDL-библиотеки для этой цели;
г. интеграцию типовых блоков для создания НБЬ-описания модуля верхнего уровня (РС-кодека).
2. функционально-алгоритмический этап включает:
а. выбор алгоритмов нестандартных (в смысле отсутствия в НОЬ-библиотеке компонентов с нужными параметрами) блоков РС-кодека;
б. реализацию нестандартного блока с использованием типовых узлов из ШЭЬ-библи отеки;
в. верификацию и включение блока в ШЭЬ-библиотеку.
3. этап функциональной верификации проекта (прямоугольник 5). Верификация упрощается за счёт использования в тестирующей программе эталонных значений, полученных с помощью МАТЬАВ-библиотеки;
4. этапы синтеза проекта и реализации в заданном проектировщиком элементном базисе и конструктиве (прямоугольники 6-8). Эти этапы идут по стандартной процедуре соответствующей САПР и после временного моделирования позволяют получить файл программирования ПЛИС.
Подмножество высокоуровневых описаний типовых узлов РС-кодеков включает специфические для РС-кодеков узлы (арифметические) и универсальные (регистры, счётчики, мультиплексоры, компараторы и т.д.) сложные по аппаратуре и имеющие большую задержку узлы имеют несколько вариантов описаний архитектур.
Полученные в первой главе теоретические оценки сложности аппаратных реализаций алгоритмов отдельных блоков РС-кодека (см табл. 1) были экспериментально проверены (см. табл. 3). В целом эксперимент подтвердил правильность теоретических оценок.
Таблица 3
Экспериментальные оценки сложности аппаратуры и задержки критического пути блоков РС-кодека, реализованных на ПЛИС
Блок/Узел А<И Мик ЯеБ Мих Мет Задержка критического пути
РС-кодер И И И 2 0 2ТсГ_А1Ш+Тср_Миь+Тт111
А 5Г « вСОМР 2Н-1 21 4Н-1 2144 0 ТоГ^АОО+Тор_МШ+ Ттш[
§ V КЕЭОЬУ (ИШМ) ЗГИ 6М-2 61+5 61+4 0 ТСР_АСО+ТСР_мът+ Ттш(
Р01ЖСН 31-3 21 21+6 И 2 ТОР_МШ.+ТПШХ
Итого РС-декодера 8М 101+2 121+12 101+8 2 Тск_АЮО+ТсР_МиЬ+Тши
В рамках оценки эффективности предложенной методики проектирования РС-кодеков исследован и разработан проект одноканального РС-кодера (ЕКССЮЕ11_Т1). Проект описан на языке Уеп1о£, настроен на код РС (п=255, к=239) с параметрами т=8, р(х)=1+х+х2+х3+х4+х8, Ь=0, реализован с использованием САПР фирмы ХЗЬМХ. Описание проекта построено на основе модулей ШЭЬ-библиотеки. Для оценки его схемотехнических показателей, приведёны результаты сравнения их с
характеристиками РС-кодера фирмы Х1ЬШХ (ЕМСООЕЯ_Х1), создаваемы] генератором 1Р-ядер (СогеОепега1ог версии 5.1) САПР фирмы ХПЖХ (см. табл. 4).
Таблица
Сравнительные характеристики авторского РС-кодера ENCODER_Tl и ENCODERX1 фирмы XTLINX
VTRTEX-4 VIRTEX-6
Параметры ENCODER Т1 ENCODER XI ENCODER T1 ENCODER XI
Т(МГц) 343 333 405.6 441
Л (такты) 1 3 1 3
П (Мбит/с) 2.74 2.66 3.24 3.5
С (слайсы) 136 150 157 187
Видно, что проекты РС-кодеров имеют примерно равные характеристики.
В ходе оценки эффективности HDL-библиотеки разработан базовый про ею одноканального РС-декодера. Его параметризованное HDL-описание выполнено н; языке Verilog и настроено на РС-код PC (255,239). Первая версия проекта на основе библиотечных узлов прямой схемной интерпретации комбинационными схемам! операций возведения в степень и инверсии оказалась неэффективной. Вторая версия, была реализована на основе имеющегося в HDL-библиотеке табличного способ; вычисления этих функций. Это позволило повысить тактовую частоту примерно i пять раз (с 33 МГц до 152 МГц на микросхеме VIRTEX-4).
Отметим, что при создании базового проекта одноканального РС-декодерг 20.5% из количества строк проекта занимают строки конкретизации библиотечных модулей узлов типовых арифметических операций. 72% из общего количества строк проекта занимают строки типовых узлов и блоков (число строк типовых арифметических операций зависит от параметра t (здесь они рассчитаны для t=l).
Таблицаí
Результаты реализации на ПЛИС проектов авторского декодера БЕС_Т1, БЕС_Х1 фирмы ХПЛЖ и ОЕС_1Р1 фирмы 1Рг1ит
VTRT ЕХ-4 VIRTEX-6 SPARTAN-3ADSP
Параметры DEC_T1 DEC_X1 DEC_T1 DEC_X1 DEC_T1 DEC_X1 DEC IP1
Т(МГц) 152 136 281.29 257.4 132 144 149
Л (такты) 286 466 286 466 286 466 /
П (Мбит/с) 1.21 1.08 2.25 2.05 1.05 1.15 1.19
С (слайсы, память) 2632 3 755 2 907 3 249 2 3157 3 802 2 1851 /
В табл. 5 приведёны результаты сравнения аппаратных показателей базового проекта одноканального РС-декодера с РС-декодером фирмы "X7T.TNX (DEC_X1) —
t
i
1Р-ядром, создаваемом САПР 1БЕ фирмы ХПЖХ (СогеОепегаШг версии 7.1).
Результаты показывают, что при реализации на микросхемах УГО.ТЕХ-4 и УЖТЕХ-б ОЕС_Т1 по максимальной тактовой частоте авторский декодер превосходит на 9% продукт фирмы ХИЛЫХ БЕС_Х1. Его латентность на 180 тактов меньше, но он расходует в 3.5 раза больше ресурсов ПЛИС (общее количество эквивалентных вентилей приблизительно равно 400000), чем продукт фирм УТТ.ЩХ ОЕС_Х1. На микросхеме ЗРАКГАК-ЗАОЗР (см. табл. 5) схема декодера ОЕС_Т1 по количеству слайсов оказалась больше (примерно в 1.7 раза), чем схема декодера БЕС_ГР1 — продукт фирмы ГРпит.
Исследованы зависимости максимальной тактовой частоты (Т) и сложности аппаратуры (С) базового проекта РС-декодера от параметров РС-кода. Показано, что Т и С линейно зависят от разрядности передаваемого символа (параметр т) и количества исправляемых ошибок (параметр Базовый проект РС-декодера ОЕС_Т1 оказался не конкурентным при применении его в качестве одноканального декодера для декодирования непрерывного потока данных т.к. при постановке задачи проектирования базового декодера был сделан выбор быстродействующего РС-декодера с минимальной латентностью. Но тем не менее, полученные примеры авторских проектов РС-кодеков имеют преимущества открытого кода по сравнению с конкурентами. Соответственно авторские проекты могут модифицироваться и быть реализованы на ПЛИС разных фирм, что использовано в проекте многоканального декодера в гл. 4. Кроме того диапазон РС-кодов, на которые они могут быть настроены, шире (т от 3 до 16), чем у генератора 1Р-ядер декодеров фирмы ХГЬШХ (т от 3 до 12).
В четвёртой главе в качестве примера практического применения предложенной автором методики проектирования РС-кодеков исследуются варианты проектов многоканального РС-декодера для оптоволоконных сетей связи. Стандарт в.709 как уже отмечалось предполагает в канале одновременную передачу с перекрытием 16-ти кодовых слов. Соответственно стоит вопрос о создании соответствующих 16-ти канальных РС-кодеров и декодеров. Ниже рассматриваются особенности исследованных вариантов многоканальных декодеров.
Первый вариант (В1) — параллельная установка 16 одноканальных базовых декодеров БЕС_Т1 собственной разработки. Каждый декодер ВЕС_Т1 является классическим одноканальным декодером. Его разработка была рассмотрена в третьей главе. Однако такое решение представляется наихудшим, так как БЕС_Т1 по аппаратным показателям в несколько раз уступает фирменному одноканальному декодеру БЕС_Х1, генерируемому САПР фирмы ХПЖХ в виде 1Р ядра.
Второй вариант (В2) — параллельная установка двух восьми-канальных декодеров БЕС_Т2 авторской разработки. Анализ пути распространения потока данных в базовом РС-декодере (см. рис. 2) показал, что информация проходит блоки (БСОМР, КЕБОЬУ, БОШСН) последовательно (каждый блок — стадия конвейера), задерживаясь в них на разное время (в БСОМР на п тактов, в КЕБОЬУ на IX тактов и т.д.). Естественно было предложить вариант балансировки конвейера в БЕС_Т2 за счёт разделения времени (мультиплексирование) блока решения ключевого
уравнения КЕЭОЬУ (см. рис. 2 блок № 2). Можно использовать один и тот же бло КЕБОЬУ для обработки нескольких потоков данных. Этот вариант имеет числ каналов Ь, определяемое как: 2ФЬ<п.
Третий вариант (ВЗ) — параллельная установка двух восьми-канальны авторских декодеров БЕС_ТЗ с конвейерным блоком КЕБОЬУ. Многоканальны декодер ОЕС_ТЗ отличается от БЕС_Т2 конвейерным блоком КЕвОЬУ (обозначи его как РКЕвОЬУ), который способен принимать и обрабатывать одновременно ] каналов данных при условии, что 2ФЬ<п. Конвейерный блок РКЕБОЬУ имеет I стадий конвейеризации и реализован на основе узла конвейерного умножения поле Галуа (см. га. 3). Такая структура РС-декодера способна выполнит одновременную обработку нескольких Ь каналов при условии, что Ь> т.
Четвертый вариант (В4) — параллельная установка 16 ЕР-яде] одноканального РС-декодера фирмы ХИЛЫХ БЕС_Х1. Декодер В4 построен п параллельной схеме варианта В1 применения одноканальных декодеров -использованием 1Р-ядра одноканального декодера фирмы ХПЖХ (обозначим ег как ОЕС_Х1), полученного с использованием генератора ЕР-ядер (СогеОепега1ог САПР этой фирмы для кода РС (255,239).
Пятый вариант (В5) — параллельная установка восьми 1Р-ядер двух канальных РС декодеров фирмы ХПЖХ. Декодер В5 по структуре схож I декодерами В2 и ВЗ, реализованными на основе многоканальных БЕС_Т2 ] БЕС_ТЗ. Для того, чтобы формировать РС-декодер стандарта 0.709 (16 каналов) можно использовать двухканальный декодер фирмы Х1ЫЫХ, обозначим его кш БЕС_Х2 и параллельно подключить восемь его экземпляров.
В табл. 6 даны результаты сравнения характеристик пяти вариантов В1-В: декодера 0.709, реализованных на микросхеме УГГИЕХ-б (ХС6УЬХ130Т-1Ш156).
Таблица I
Сравнение характеристик пяти вариантов проекта РС-декодера С.709, реализованных на ПЛИС УШТЕХ-б (ХС6УЬХ130Т-1Ш156)
В1 В2 ВЗ В4 В5
Открытость кода Да Да Да Нет Нет
Использование ПЛИС других фирм Да Да Да Нет Нет
Пропускная способность, Гбит/с 36.005 34.56 51.2 32.94 21.37
Тактовая частота (макс.), МГц 281.29 270 400 257.4 334
Латентность в тактах 286 289 — 422 398 — 405 466 926
Количество используемых слайсов 40768 7244 4796 3984 3200
Количество блоков блочной памяти 48 48 48 32 16
Примечание — в декодерах БЕС_Т2 и БЕС ТЗ латентность зависит от номер! канала. Например, в БЕС_ТЗ латентность первого канала 398 тактов и латентносп восьмого канала 405 тактов.
>
I
Можно за основу взять проект на базе ЕР-ядра ХГЫЫХ (вариант В5) и сравнить с ним данные остальных четырёх вариантов РС-декодера 0.709 — (разделить значения параметров каждого варианта на соответствующее ему значение параметра варианта В5). Это даст информацию о том, что насколько варианты В1, В2, ВЗ и В4 по аппаратным показателям хуже или лучше фирменного варианта В5.
Таблица 7
Результаты сравнения четырёх вариантов проекта РС-декодера стандарта С.709 с
вариантом В5
В1 В2 ВЗ В4 В5
Пропускная способность 1.68 1.61 2.39 1.54 1
Тактовая частота (макс.) 0.84 0.80 1.2 0.77 1
Латентность 0.30 0.31-0.45 0.42-0.43 0.50 1
Количество слайсов 12.74 2.26 1.5 1.24 1
Из табл. 7 видно, что по сравнению с декодером фирмы В5 на базе 1Р-ядра ХШЫХ, разработанный автором вариант ВЗ проекта многоканального декодера стандарта 0.709 (количество строк кода Уеп1о§ более 4700) имеет наилучшие характеристики по максимальной тактовой частоте. Пропускная способность декодера ВЗ в два раза превосходит аналогичный параметр декодера В5. Латентность декодера ВЗ в два раза меньше чем В5. Сложность схемы декодера ВЗ лишь 1.5 раза превосходит сложность декодера В5 фирмы ХПЖХ. Отметим, что при скорости 51.2 Гбит/с, декодер ВЗ способен работать не только с вариантом ОТи-2 стандарта С.709 (10 Гбит/с), но и с другим вариантом ОТ11-3 (40 Гбит/с). Кроме того, проект РС-декодера ВЗ в отличие проекта В5 на базе 1Р-адра фирмы ХП-ШХ обладает преимуществами открытости кода и высокой парам етризованности Уеп^-описания. Это обеспечивает возможность модификации отдельных блоков проекта и его реализации на микросхемах ПЛИС различных производителей.
Основные научные и практические результаты диссертации:
1. предложена методика автоматизированного проектирования аппаратно реализуемых РС-кодеков на базе подмножества высокоуровневых параметризованных ШЭЬ-описаний типовых узлов и блоков;
2. исследованы типовые алгоритмы кодирования и декодирования РС-кодов с точки зрения эффективности их аппаратной реализации. На базе этих исследований определен состав типовых узлов и блоков РС-кодеков, для подмножества, которых разработаны высокоуровневые параметризованные НОЬ-описания, эффективно реализуемые в элементном базисе ПЛИС типа БРСА. Общий объём этих описаний более 4000 строк Уепк^-кода;
3. для упрощения процесса верификации проектов РС-кодеков разработана библиотека МАТЬАВ-функций с дружественным пользовательским интерфейсом в составе 15 модулей на языке МАТЬАВ, общим объёмом более
3000 строк кода;
4. показана эффективность предложенной методики и её инструментальны средств на примере проектирования семейства многоканальных РС-декодеро] работающих по стандарту G.709. Высокоуровневость, параметризованное!] модульность и повторнопригодностъ HDL-описаний обеспечиваю возможность модификации отдельных блоков проекта и его реализации н микросхемах ПЛИС различных производителей (общий объём HDL-описани проектов многоканальных декодеров — более 4700 строк кода).
В приложении А приведён пример процесса кодирования и декодирования.
В приложении Б представлены элементы HDL-библиотеки -параметризованные Verilog-описания узлов, реализующих арифметически операций в полях Галуа GF(2m).
В приложении В рассмотрена реализация блоков одноканального РС-декодер на ПЛИС. Представлены результаты моделирования проектов одноканального РС кодека и многоканального РС-декодера стандарта G.709.
Публикации по теме диссертации:
1. Тайлеб-Мазуз Н. Параметризованный проект высокоскоростной многоканального декодера кода Рида-Соломона // Вестник МЭИ. - М. Издательский дом МЭИ, 2011. № 5, -С 112-118.
2. Тайлеб Н., Поляков А.К. Проектирование кодеров и декодеров кода Рида Соломона на ПЛИС типа FPGA // Сборник трудов научного семинара посвященного памяти д.т.н., профессора З.М. БЕНЕСОНА.- М.: ВЦ РАН 2008 -С. 26-29.
3. Тайлеб ур. Мазуз Н., Поляков А.К., Реализация библиотеки арифметически? операций над полиномами в поле Галуа на ПЛИС типа FPGA / Радиоэлектроника, электротехника и энергетика: 14-ая междунар. Науч.-техн Конф. студентов и аспирантов МЭИ: тез докл. : В 3-х т., - М.: Издательски? дом МЭИ, 2008. - Т.1. -С 345-346.
4. Введение в САПР ПЛИС фирмы XILINX: Лабораторный практикум, методическое пособие / Тайлеб Н. [и др.] / под ред. Полякова А. К. и Дерюпж А. А. - М.: Издательский дом МЭИ, 2007.
5. Тайлеб Н., Поляков А. К., Тайлеб М. Библиотека VEMLOG-описаник арифметических операций в поле Галуа // Современная Электроника -М-СТА-ПРЕСС, 2007. № 5, -С. 46-48.
6. Тайлеб Н., Поляков А. К., Тайлеб М. Некоторые вопросы перепроектирования старой цифровой аппаратуры на новой элементной базе ПЛИС типа FPGA // Радиоэлектроника, электротехника и энергетика: 13-ая междунар. Науч.-техн. Конф. студентов и аспирантов МЭИ: Тез. докл.: в 3-х т. -М.: Издательский дом МЭИ, 2007. - Т. 1. -С 418-419.
Подписано в печать //»0J» /&ГЗак. #,99 Тир. /00 П.л. Полиграфический центр МЭИ Красноказарменная ул.,д.13
Оглавление автор диссертации — кандидата технических наук Тайлеб ур. Мазуз Незхат
Список используемых сокращений.
Введение.
Глава 1. Теоретические основы кодирования и декодирования кодов Рида-Соломона.
1.1 Поля Галуа и их характеристики.
1.2 Арифметические операции в полях Галуа.
1.2.1 Арифметические операции над элементами поля.
1.2.2 Арифметические операции над полиномами.
1.3 Коды Рида-Соломона.
1.3.1 Существо проведенных исследований.
1.3.2 Кодирование РС-кодов.
1.3.3 Декодирование РС-кодов.
1.3.4 Оценка аппаратной реализации алгоритмов решения ключевого уравнения.
1.3.5 Выводы по оценкам аппаратной реализации алгоритмов решения ключевого уравнения в РС-декодере.
1.3.6 Оценка количества типовых узлов и задержки критического пути блоков РС-кодеков.
1.4 Выводы по первой главе.
Глава 2. Современный подход к проектированию систем цифровой обработки сигналов на ПЛИС.
2.1 Программируемые логические интегральные схемы.
2.2 Структура ПЛИС типа БРвА фирмы Х11ЖХ.
2.2.1 Семейство УЖ.ТЕХ-4.
2.2.2 Семейство УЖТЕХ-б.
2.2.3 Семейство БРАЯТАК-б.
2.3 САПР ПЛИС и языки описания аппаратуры.
2.3.1 Языки описания аппаратуры (НБЬ).
2.3.2 Особенности САПР 1БЕ фирмы Х1ЬМХ.
2.3.3 Типовой маршрут проектирования в САПР 1БЕ.
2.3.4 Функциональное моделирование.
2.3.5 Оценка сложности аппаратной реализации на ПЛИС.
2.4 Учёт особенностей схемотехники ПЛИС на примере проектирования трехвходовых многоразрядных сумматоров.
2.4.1 Разработка вариантов проектов трёх-входового многоразрядного сумматора.
2.4.2 Анализ результатов различных способов проектирования трёхвходовых многоразрядных сумматоров.
2.4.3 Рекомендации по методике проектирования типовых функциональных узлов устройств на ПЛИС.
2.5 Результаты и выводы по второй главе.
Глава 3. Высокоуровневые параметризованные описания типовых функциональных узлов и блоков и методика проектирования РС-кодеков на их базе.
3.1 Проектирование РС-кодеков.
3.2 Постановка задачи проектирования РС-кодеков.
3.2.1 Формальная постановка задачи.
3.2.2 Выбор и ранжирование показателей качества проектов РС-кодеков.
3.2.3 Ограничения на класс проектируемых РС-кодеков.
3.3 Методика проектирования РС-кодеков.
3.3.1 Подмножество высокоуровневых параметризованных описаний типовых функциональных узлов и блоков РС-кодеков.
3.3.2 Состав библиотеки высокоуровневых параметризованных описаний функциональных узлов и блоков РС-кодеков.
3.3.3 Создание HDL-описаний узлов, выполняющих арифметические операции над элементами в поле Галуа.
3.3.4 Создание HDL-описаний узлов арифметических операций над полиномами.
3.3.5 Создание MATLAB-функций для генерации значений параметров настройки узлов и блоков РС-кодеков и эталонов, используемых при верификации проектов РС-кодеков.
3.4 Оценка эффективности предложенной методики проектирования на примере разработки проектов одноканального РС-кодера и одноканального РС-декодера.
3.4.1 Исследование и разработка проекта одноканального РС-кодера.
3.4.2 Эксперимент по сравнению проекта одноканального РС-кодера с фирменным решением XILINX.
3.4.3 Исследование и разработка проекта одноканального РС-декодера.
3.4.4 Создание HDL-описаний типовых блоков РС-декодера.
3.4.5 Уточненная оценка сложности аппаратуры и задержки критического пути в схемах РС-кодеков.
3.4.6 Эксперимент по сравнению проекта одноканального РС-декодера с фирменным решением - IP-ядром фирмы XILINX.
3.5 Результаты и выводы по третьей главе.
Глава 4. Проект высокоскоростного многоканального РС-декодера для оптоволоконных сетей связи.
4.1 Структура кадра стандарта G.709.
4.2 Реализация проекта РС-декодера стандарта G.709.
4.2.1 Первый вариант (В1) — параллельная установка 16 одноканальных декодеров DEC T1 собственной разработки.
4.2.2 Второй вариант (В2) — параллельная установка двух восьми-канальных декодеров DECT2.
4.2.3 Третий вариант (ВЗ) — параллельная установка двух восьми-канальных декодеров DECT3 с конвейерным блоком KESOLV.
4.2.4 Четвертый вариант (В4) — Параллельная установка 16 IP-ядер одноканального РС-декодера фирмы Xilinx DECX1.
4.2.5 Пятый вариант (В5) — Параллельная установка восьми IP-ядер двух-канальных PC декодеров фирмы Xilinx.
4.3 Сравнения способа ввода данных в многоканальных декодерах DEC T3 и DEC X
4.4 Анализ эффективности реализации на ПЛИС пяти вариантов компонентов проектов многоканального РС-декодера стандарта G.709.
4.5 Анализ пяти вариантов проектов многоканального декодера G.709.
4.6 Характеристики многоканального РС-декодера DEC T3.
4.7 Верификация авторских вариантов проектов РС-декодера.
4.8 Рекомендации по проектированию РС-кодеков в САПР ISE.
4.9 Результаты и выводы по четвёртой главе.
Введение 2012 год, диссертация по информатике, вычислительной технике и управлению, Тайлеб ур. Мазуз Незхат
Одним из путей повышения помехоустойчивости систем передачи и обработки потока данных является использование информационной избыточности — помехоустойчивого кодирования (FEC — Forward Error Correction) [1]. Среди методов обеспечения помехоустойчивого кодирования можно отметить применение циклических кодов, в частности кодов Рида-Соломона (коротко PC-кодов). Устройства, программно и аппаратно реализующие алгоритмы кодирования и декодирования этих кодов РС-кодеки [2] (обобщенное название PC-кодеров и PC-декодеров) применяются в сетях ЭВМ, например в оптоволоконных сетях стандарта ITU-T G.709 [3], в оптических системах подводного оптоволоконного кабеля ITU-T G.975, в сетях цифрового телевидения, в спутниковой и сотовой связи, при передаче данных по телефонным каналам, в системах хранения информации на магнитных и оптических дисках и т.д. На эти коды базируются сетевые стандарты IEEE 802.16 (сети Wi MAX), ATSC (цифровое телевидение), CCSDS (сети космической связи) и др.
Хотя теоретическая база PC-кодов известна уже более пятидесяти лет, их внедрение в системы реального времени ограничивалось недостаточностью вычислительных ресурсов. Только с появлением быстродействующих микропроцессоров и сверхбольших интегральных схем (СБИС) стало возможным эффективно реализовать такие устройства в высокоскоростных системах передачи и обработки информации реального времени.
Одним из способов снижения требований к быстродействию таких устройств является многоканальность, при которой поток данных представляет последовательность символов, принадлежащих нескольким каналам. Современные многоканальные РС-кодеки представляют собой сложные специализированные устройства цифровой обработки сигналов, организация вычислительного процесса в которых реализуется с использованием принципов параллелизма, конвейеризации, мультипроцессирования, разделения вычислительных ресурсов во времени и пространстве и т.д.
В условиях мелкосерийного производства реализация PC-кодеков в виде СБИС излишне дорога. Однако с появлением программируемых интегральных схем (ПЛИС) со встроенными процессорными ядрами, модулями блочной памяти, высокоскоростными приёмо-передатчиками (трансиверами) и т.п., появились возможности эффективной реализации мелкосерийного производства подобных устройств.
Параллельно с развитием технологии ПЛИС развиваются соответствующие системы автоматизации проектирования (САПР) и языки описания аппаратуры (HDL - Hardware Description Language), на которых выполняется описание проекта (совокупность информации о проектируемом объекте). В узком смысле в данной работе термин «проект» означает HDL-описание устройства.
При разработке PC-кодеков с помощью современных САПР приходится находить баланс между качеством проектов, трудоёмкостью и временем их создания.
Существуют разные подходы к проектированию PC-кодеков. Упрощенное дерево возможных проектных решений иллюстрирует рис. 1.
Рис. 1. Дерево возможных решений в области проектирования РС-кодеков Рассмотрим некоторые из них.
Если говорить о приобретении проектов PC-кодеков у сторонних фирм в виде IP-ядер (известны десятки зарубежных фирм-поставщиков и одна отечественная) или использовании IP-ядер, создаваемых генераторами ядер современных САПР (IP-ядро фирмы XILINX [4] стоит примерно 5000$, а фирмы Altera [5] примерно 8000$), то естественным преимуществом этого пути является высокие схемотехнические характеристики проектов, небольшие сроки и трудоёмкость процесса проектирования систем. Но общим недостатком таких решений является закрытость описания внутренностей IP-ядер (их исходного кода), невозможность изменения не только алгоритма обработки и структуры IP-ядра, но и его интерфейса. Этот путь хорош для разовых и быстрых решений, но не перспективен в смысле создания собственных продуктов интеллектуальной собственности и накопления опыта проектирования.
Если говорить о разработке HDL-описаний проектов PC-кодеков (см. рис. 1 жирные блоки направо), то помимо преимуществ в приобретении опыта коллективом проектировщиков и получении повторопригодных решений, недостатками такого подхода являются высокая трудоёмкость и большие сроки проектирования, повышенные требования к квалификации проектировщиков и т.п. В этом случае важен выбор уровня HDL описаний проектов устройств, выбор методологии и технологии проектирования и т.п.
Помимо информации о наличии и свойствах IP-ядер в Интернете имеется несколько открытых проектов одноканальных PC-кодеков, представленных в виде высокоуровневых HDL-описаний (например на сайте Opencores [6] есть проект PC-декодера для кода РС(31, 19) [7]). Но их качество невысокое, такие проекты в основной массе не параметризованы (рассчитаны только на определенный PC-код) -поэтому- то они бесплатные.
Если говорить об отечественных IP-ядрах PC-кодеков, то в момент начала работы (2006 г.) над диссертацией они отсутствовали. В настоящее время в Интернете появились данные о разработках одноканальных PC-кодеков фирмы IPrium [8] (IP-ядро стоит 950 евро), но как и другие IP-ядра, они имеют закрытый код, а качество получаемых аппаратных реализаций значительно уступает зарубежным.
Актуальность темы
Учитывая вышесказанное, представляются актуальной задача анализа способов организации PC-кодеков, создание методики проектирования таких устройств на основе высокоуровневых параметризованных HDL-описаний их типовых функциональных узлов и блоков.
Цели и задачи диссертации
Целью работы является разработка средств проектирования РС-кодеков на базе ПЛИС в виде подмножества высокоуровневых параметризованных НБЬ-описаний типовых функциональных узлов и блоков РС-кодеков, а также практическая проверка их эффективности на примере проекта многоканального РС-кодека для оптоволоконных сетей связи стандарта 0.709.
В число задач, которые необходимо решить для достижения постановленной цели входят:
1. исследование и анализ алгоритмов основных арифметических операций в полях Галуа и операций над полиномами, коэффициенты которых принадлежат этому полю, определение состава и функций типовых функциональных узлов, эффективно реализующих их аппаратно;
2. анализ и выбор вариантов алгоритмов типовых блоков РС-кодеков с точки зрения оценки эффективности их аппаратной реализации;
3. исследование и анализ особенностей схемотехники ПЛИС и различных подходов к автоматизированному проектированию устройств на ПЛИС применительно к реализации типовых функциональных узлов и блоков РС-кодеков;
4. исследование и разработка библиотеки высокоуровневых параметризованных Уеп1о§-описаний типовых функциональных узлов и блоков РС-кодеков, учитывающих специфику операций в полях Галуа и особенности элементной базы ПЛИС;
5. разработка библиотеки МАТЪАВ-функций, предназначенных для генерации значений параметров, используемых в НБЬ-описаниях узлов РС-кодеков и для генерации эталонных значений данных, используемых при верификации НБЬ-описаний РС-кодеков методом имитационного моделирования;
6. применение предложенных средств автоматизации проектирования и исследование их эффективности на примере разработки проектов одноканальных и многоканальных РС-кодеков с высокой пропускной способностью применительно к системам оптоволоконной связи стандарта в.709.
Объект исследований
Объектом исследования являются PC-кодеки, их аппаратная реализация в элементном базисе ПЛИС типа FPGA, высокоуровневые параметризованные описания функциональных узлов и блоков PC-кодеков, методы и средства автоматизации проектирования PC-кодеков с использованием HDL-библиотек высокоуровневых описаний их типовых функциональных узлов и блоков.
Предмет исследования
Предметом исследования является структура и алгоритмы функционирования РС-кодеков, их аппаратная реализация в элементном базисе ПЛИС и средства автоматизации проектирования PC-кодеков на базе библиотек высокоуровневых описаний типовых узлов и блоков.
Методы и средства исследования
Используемыми методами и средствами исследования являются: метод имитационного моделирования, математический аппарат полей Галуа, алгоритмы кодирования и декодирования кодов Рида-Соломона, алгоритмы Берлекэмпа-Месси и Евклида, и также формула Форнея.
В качестве инструментария применён пакет прикладных программ MATLAB [9], ориентированный на решение задач математических вычислений, язык описания аппаратуры HDL Verilog [10, 11, 12], САПР фирмы XILINX [13], САПР и пакет моделирования Questasim [14] фирмы Mentor Graphics [15].
Научная новизна заключается в:
1. исследовании и анализе различных алгоритмов выполнения арифметических операций в поле Галуа и создании библиотек высокоуровневых параметризованных HDL-описаний типовых функциональных узлов, эффективно реализующих эти операции в элементном базисе ПЛИС типа FPGA;
2. исследовании и анализе типовых алгоритмов блоков PC-кодеков, оценке эффективности вариантов их схемной реализации и создании библиотеки высокоуровневых параметризованных HDL-описаний типовых блоков РС-кодеков, эффективно реализуемых на ПЛИС типа FPGA;
3. разработке методики автоматизированного проектирования РС кодеков на базе расширяющегося подмножества высокоуровневых параметризованных НБЬ-описаний типовых функциональных узлов и блоков;
4. исследовании способов организации многоканальных декодеров и создании ЬГОЬ-описания проекта многоканального РС-декодера эффективно аппаратно реализуемого на ПЛИС типа БРвА. Его пропускная способность в два раза превышает пропускную способность известных аналогов.
Достоверность выводов и рекомендаций, сформулированных в диссертации, обусловлена корректной постановкой задач и данными, полученными в результате имитационных и физических экспериментов на отладочных платах фирмы Х1ЬМХ: МЬ403 [16] с микросхемой УЖ.ТЕХ-4 [17] и ЭР605 [18] с микросхемой БРАЯТАК-б [19].
Научные положения, выносимые на защиту:
На защиту выносятся:
1. способ высокой параметризации НБЬ-описаний проектов типовых функциональных узлов и блоков РС-кодеков;
2. методика автоматизированного проектирования РС-кодеков на базе наборов высокоуровневых параметризованных НБЬ-описаний их типовых функциональных узлов и блоков;
3. подмножество высокоуровневых НОЬ-описаний типовых функциональных узлов и блоков РС-кодеков, эффективно аппаратно реализуемых в логическом базисе ПЛИС типа БРвА. Эти описания могут быть использованы не только при разработке РС-кодеков, но и как базовые компоненты в проектах систем обработки информации, основанных на применении полей Галуа. Библиотека не имеет известных аналогов;
4. проект многоканального декодера для оптоволоконных сетей стандарта 0.709 отличающегося от известных более высокой пропускной способностью.
Практическая значимость
Предложенная методика проектирования РС-кодеков на базе подмножества высокоуровневых описаний типовых функциональных узлов и блоков позволяет, уменьшить сроки и трудоёмкость процесса проектирования и повысить качество проектов как объектов интеллектуальной собственности. Эффективность разработанной методики и инструментальных средств её поддержки в виде НБЬ-библиотеки описаний типовых узлов и блоков и МАТЬАВ-библиотеки функций, обеспечивающих генерацию эталонов для процесса верификации проектов продемонстрирована на примере проектирования многоканального РС-декодера для оптоволоконных сетей связи стандарта 0.709 со скоростью передачи до 51 Гбит/с. Показана эффективность предложенных решений путём сравнения с известными аналогами. Авторский проект многоканального РС-декодера обладает более высокой пропускной способностью, чем наилучший из известных, построенный на базе 1Р-ядер фирмы Х1ЬЕЧХ не говоря уж о таких показателях, как открытость кода, его повторнопригодность, независимость от САПР и фирмы производителя ПЛИС типа БРвА и т.п.
Описания типовых узлов и блоков прошли не только этапы функциональной верификации, но и синтеза и физической верификации на отладочных платах. Например, физическая верификация блока восьмиканального декодера, являющегося компонентом шестнадцатиканального РС-декодера стандарта 0.709 осуществлена на отладочной плате 8Р605 фирмы ХПтх.
Внедрение результатов исследований
Результаты исследования используются в учебном процессе кафедры ВМСиС МЭИ в курсах «Инженерное проектирование и САПР» [20]. Предполагается их использовать и в курсе «Цифровая обработка сигналов».
Апробация результатов работы
Основные положения диссертации докладывались на следующих конференциях и семинарах:
• научный семинар, посвященный памяти д.т.н., профессора З.М. БЕНЕНСОНА, ВЦ РАН, 2008.
• четырнадцатая международная научно-техническая конференция студентов и аспирантов МЭИ «Радиоэлектроника, электротехника и энергетика», МЭИ (ТУ), 2008;
• тринадцатая международная научно-техническая конференция студентов и аспирантов МЭИ «Радиоэлектроника, электротехника и энергетика», МЭИ (ТУ), 2007;
За доклад [21] автор получил почетный диплом 1 степени на 14 международной научно-технической технической конференции студентов и аспирантов «Радиоэлектроника, электроника и энергетика».
Публикации по теме диссертации
Основные результаты работы, опубликованы в 6 статьях и докладах на конференциях, в том числе одна статья опубликована в журнале «Вестник МЭИ», входящем в перечень ВАК РФ.
1. Тайлеб-Мазуз Н. Параметризованный проект высокоскоростного многоканального декодера кода Рида-Соломона // Вестник МЭИ. - М.: Издательский дом МЭИ, 2011. № 5, -С 112-118.
2. Тайлеб Н., Поляков А.К. Проектирование кодеров и декодеров кода Рида-Соломона на ПЛИС типа FPGA // Сборник трудов научного семинара, посвященного памяти д.т.н., профессора З.М. БЕНЕНСОНА.- М.: ВЦ РАН, 2008. -С. 26-29.
3. Тайлеб ур. Мазуз Н., Поляков А.К., Реализация библиотеки арифметических операций над полиномами в поле Галуа на ПЛИС типа FPGA // Радиоэлектроника, электротехника и энергетика: 14-ая междунар. Науч.-техн. Конф. студентов и аспирантов МЭИ: тез докл. : В 3-х т., - М.: Издательский дом МЭИ, 2008. - Т.1. -С 345-346.
4. Введение в САПР ПЛИС фирмы XILINX: Лабораторный практикум: методическое пособие / Тайлеб Н. [и др.] / под ред. Полякова А. К. и Дерюгина А. А. - М.: Издательский дом МЭИ, 2007.
5. Тайлеб Н., Поляков А. К., Тайлеб М. Библиотека VERILOG-описаний арифметических операций в поле Галуа // Современная Электроника. -М.: СТА-ПРЕСС, 2007. № 5, -С. 46-48.
6. Тайлеб Н., Поляков А. К., Тайлеб М. Некоторые вопросы перепроектирования старой цифровой аппаратуры на новой элементной базе ПЛИС типа FPGA //
Радиоэлектроника, электротехника и энергетика: 13-ая междунар. Науч.-техн. Конф. студентов и аспирантов МЭИ: Тез. докл. : в 3-х т. -М.: Издательский дом МЭИ, 2007. -Т. 1.-С418-419.
Структура и объём диссертационной работы
Работа состоит из введения, четырёх глав, заключения, списка информационных источников из 79 наименований и 3 приложений. Основная часть работы изложена на 177 страницах машинописного текста, содержит 70 рисунков, 27 таблиц. Общий объём диссертации 210 страниц.
Заключение диссертация на тему "Аппаратная реализация кодеков Рида-Соломона на плис на основе высокоуровневых параметризованных описаний функциональных узлов"
1.4 Выводы по первой главе
В первой главе:
1. рассмотрены основные понятия теории полей Галуа, арифметических операции над элементами и полиномами коды Рида-Соломона, принципы кодирования и декодирования данных с применением алгоритма Петерсона-Горенштейна-Зиерлера, модификаций алгоритма Берлекэмпа-Месси и алгоритма Евклида;
2. после рассмотрения этих алгоритмов сделан вывод о предпочтительности применения модификации алгоритма ВМ — RiBM при разработке проектов высокоскоростных РС-декодеров. По сравнению с riBM, алгоритм RiBM отличается регулярностью структуры и применением только одного типа подблоков (подблоки типа PEI);
3. показано, что сложность аппаратуры устройств РС-кодеков и величина задержки критического пути, помимо структур алгоритмов, в основном определяется параметрами узлов, реализующих арифметические операции в полях Галуа: операции сложения, умножения, инверсии и возведения в степень. Показано, что традиционные аппаратные решения для операций инверсии и возведения в степень практически могут ограничить быстродействие РС-декодеров и требуется поиск новых решений в этой области;
4. получены теоретические оценки быстродействия и сложности аппаратной реализации устройств кодирования и декодирования (см. табл. 1.4) как функций соответствующих параметров типовых функциональных узлов, подблоков и блоков этих устройств. Отметим, что в статье [29] даны только результаты реализации одного из блоков РС-декодера (блок решения ключевого уравнения).
Глава 2. Современный подход к проектированию систем цифровой обработки сигналов на ПЛИС
2.1 Программируемые логические интегральные схемы
Появление ПЛИС существенно расширило возможности проектировщиков ЦОС. В первую очередь за счёт автоматизации процесса реализации проектов «в железе», уменьшения времени и стоимости этого процесса, относительной простоты внесения исправлений в схемы, использования современных технологических возможностей микроэлектроники в странах с невысоким уровнем технологии производства БИС.
Процесс настройки ПЛИС на требуемую логическую функцию заключается в программировании (конфигурировании) — вводе в память микросхемы информации, которая настраивает блоки ПЛИС на требуемую функцию и осуществляет коммутацию этих блоков.
В настоящее время известно два типа ПЛИС:
• СПЛУ— Сложные Программируемые Логические Устройства (CPLD — Complex Programmable Logical De vice) [32, 33]. В их состав входят программируемые логические блоки (ПЛМ или ПЛА) под названием: Макроячейки (Macrocells), соединённые с внешними выводами микросхемы и её внутренними шинами. ПЛИС типа CPLD обычно используют энергонезависимую память (типа Flash или EEPROM) для хранения конфигурационной информации. Поэтому нет необходимости их перепрограммировать при каждом включении электропитания;
• ППВМ — Программируемая Пользователем Вентильная Матрица (FPGA — Field Programmable Gâte Array) [32, 33]. Эти ПЛИС помимо простых блоков LUT -логических ячеек, состоящих из четырёх или шести-входовых ячеек, реализующих комбинационную функцию и триггера, имеют в своем составе набор более сложных блоков, таких как блоки умножения, блоки памяти и т.п. Для хранения конфигурации микросхемы типа FPGA обычно используют энергозависимую память, которая требует инициализации при включении электропитания.
Так как микросхемы типа FPGA имеют больше аппаратных ресурсов с более гибкой архитектурой, чем у CPLD, то они чаще используются в области цифровой обработки сигналов и соответственно, при реализации кодеков кода Рида-Соломона.
Сравнение технических показателей микросхем ПЛИС типа FPGA, выпускаемых ведущими фирмами XILINX и ALTERA показывает, что хотя XILINX несколько опережает ALTERA, бесспорного лидера не существует.
Эти фирмы бесплатно распространяют минимальные конфигурации своих САПР, которые вполне достаточны для освоения данной технологии и разработки цифровых устройств начального и среднего уровня сложности. В рамках этой идеологии фирмы предлагают университетам университетскую программу «XUP — XILINX University Program», которая включает в себя коммерческие версии САПР и несколько отладочных плат для обучения студентов. Подобным образом, кафедра ВМСС МЭИ (www.mpei.ru) получила от фирмы XILINX несколько отладочных плат с лицензионной коммерческой версии САПР ISE [34].
Автор диссертации участвовал в разработке методического пособия по проектированию схем на ПЛИС по курсу «Инженерное Проектирование и САПР» для студентов пятого класса, обучающихся по направлению «Информатика и вычислительная техника» [20]. Лабораторные работы ведутся уже более трёх лет.
К началу работы (2006 г.) над данной диссертацией фирма XILINX выпустила новое семейство ПЛИС типа VIRTEX-4 с архитектурой FPGA [35]. Далее, появились новые семейства VIRTEX-5 [36], VIRTEX-6 [37], SPARTAN-6 [19] и совсем недавно появились семейства седьмой серии - VIRTEX-7 и ARTIX-7 [38].
2.2 Структура ПЛИС типа FPGA фирмы XILINX
В каждом новом семействе ПЛИС фирма XILINX стремится к улучшению их возможностей, превращая их в мощную альтернативу СБИС. Ниже перечисляются характеристики трёх семейств VIRTEX-4, VIRTEX-6 и SPARTAN-6.
2.2.1 Семейство VIRTEX-4
Микросхемы VIRTEX-4 разработаны по архитектуре ASMBL — Advanced Silicon Modular Block, производятся по технологии 90 нм и разделены на три подсемейства: LX, FX и SX. Семейство VIRTEX-4-SX используется в разработках, связанных с ЦОС. Семейство VIRTEX-4-FX используется для реализации устройств типа систем на кристалле (SOC - System On Chip) или для встроенных систем (Embedded Platform Applications).
Микросхемы VIRTEX-4 [35] содержат следующие программируемые (настраиваемые пользователем) логические компоненты/блоки. Их число и наличие зависит от типа применяемой микросхемы (см. табл. 2.1).
• КЛБ — на его базе можно реализовать комбинационные и последовательностные схемы. Каждый блок КЛБ содержит 4 слайса (Slice), формирующие две пары SLICEM и SLICEL. SLICEM содержит элементы, которые можно использовать в качестве памяти. В каждом слайсе есть: два LUT, логика для реализации схем ускорения переноса при построении сумматоров (Carry chain) и мультиплексоры (MUX). Кроме того, два слайса SLICEM в одном КЛБ могут быть использованы как 16 разрядный сдвигающий регистр или как синхронное ОЗУ ёмкостью 16x1 бит для реализации блоков распределённой памяти. Запоминающие элементы любого слайса могут быть использованы как синхронные триггера D-типа (DFF — D-Flip flop) или как триггера-защёлки (Latch);
• БВВ — блок ввода-вывода (ЮВ — Input/Output Block), соединяющий выводы корпуса микросхемы ПЛИС с её внутренними компонентами. БВВ может настраиваться программированием на работу с одним из 20 возможных сигнальных стандартов: от ТТЛ и КМОП и до высокоскоростных дифференциальных стандартов, таких как LVDS, LVPECL;
• БП — блок синхронной памяти (BRAM - Block RAM). Каждый блок может быть запрограммирован как одно или двухпортовое синхронное ОЗУ ёмкостью до 18 кбит (от 16Кх1 бит до 512К х 36 бит) или как очередь (FIFO) (от 4К х 4 бит до 512К х 36);
• цифровой блок управления синхросигналами (DCM — Digital Clock Manager). Этот блок используется в основном для настройки фаз тактовых сигналов;
• модуль XtremeDSP48 [39] может реализовать характерные для ЦОС операции умножения 18x18 разрядных чисел с накоплением;
• ядро микропроцессора семейства PowerPC (РРС405 RISC Core с интерфейсом APU);
• контроллеры MAC Ethernet.
Микросхемы имеют программируемые трассированные ресурсы (межсоединения) для осуществления коммутации логических блоков. ГТМ — Главная Трассированная Матрица (GRM — General Routing Matrix) представляет собой матрицу транзисторных ключей, соединенных с каждым компонентом. Программируемые межсоединения имеют иерархическую структуру.
Как отмечалось выше, все программируемый элементы, включая ГТМ, управляются информацией, хранящейся в конфигурационной памяти — статическом запоминающем устройстве (ЗУ), которое находится внутри ПЛИС.
Во время отладки проекта на отладочной плате, конфигурационная информация загружается из ПК через параллельный порт ПК или через порт USB.
Общее представление о возможностях семейства ПЛИС типа VIRTEX-4 можно получить из табл. 2.1. В этой таблице так же дана информация о логических ресурсах двух других семейств микросхем:
• XC4VLX160-11Ш 513 обозначена как VIRTEX-4;
• ХС6VLX13 ОТ-1 ffl 15 6 обозначена как VIRTEX-6;
• XC6SLX150T-3fgg900 обозначена как SPARTAN-6.
Заключение
В диссертации представлены результаты исследования и разработки высокоуровневых параметризованных НБЬ-описаний функциональных узлов и блоков для аппаратной реализации кодирующих и декодирующих устройств на базе кодов Рида-Соломона (РС-кодеков) на ПЛИС типа РРСА. Предложена и практически апробирована методика проектирования указанных устройств с использованием разработанных автором НБЬ-описаний типовых функциональных узлов и блоков. Согласно предложенной методике, проекты РС-кодеков создаются в форме параметризованных, высокоуровневых, модульных и повторнопригодных НБЬ-описаний. Это обеспечивает в частности независимость проектов РС-кодеков от САПР и специфики элементной базы отдельных семейств ПЛИС типа РРОА. Проектирование ведётся с применением методов проектирования «сверху-вниз» и «снизу-вверх» и использованием созданной библиотеки НБЬ-описаний типовых функциональных узлов и блоков РС-кодеков. Верификация проектов и расчёт значений параметров, используемых в блоках РС-кодеков осуществляется с применением созданной библиотеки МАТЬАВ-функций.
В ходе выполнения работы получены следующие результаты:
1. исследовано и проанализировано современное состояние дел в области проектирования РС-кодеков. Отмечены преимущества и недостатки различных путей создания проектов таких устройств. К основным выводам из произведенного анализа можно отнести: а. низкоуровневое проектирование излишне трудоёмко; б. проектирование на базе покупных 1Р-ядер и 1Р-ядер, создаваемых генераторами ядер САПР не позволяет освободиться от постоянной зависимости от продавца, поскольку код 1Р-ядер закрыт для пользователя, а 1Р-ядра, генерируемые САПР, обычно привязаны к продукции конкретного производителя ПЛИС. в. использование РГОЬ-описаний проектов из открытых источников не позволяет получать высокоэффективных решений, так как это проекты несложных типовых РС-кодеков, выполненные с невысоким качеством.
2. в результате исследования и анализа состояния дел в области проектирования РС-кодеков принято решение о целесообразности разработки методики проектирования устройств РС-кодеков, использующей библиотеку высокоуровневых описаний типовых функциональных узлов и блоков РС-кодеков. С этой целью: а. проанализированы способы организации РС-кодеков в современных высокоскоростных системах передачи информации; б. дан краткий обзор систем автоматизации проектирования (САПР) и схемотехники ПЛИС; в. проведены исследования в области различных подходов к проектированию устройств на ПЛИС. На примере реализации вариантов проекта трёхвходового многоразрядного сумматора (количество строк кода Уеп1о§ более 900) показана целесообразность максимального использования встроенных блоков ПЛИС (например: блочной памяти, блоков умножения с накоплением и т.п.) и высокоуровневого НБЬ-описания проектов.
3. предлагаемая методика рекомендует проектировщикам создавать высокоуровневые, высокопараметризованные, повторнопригодные и модульные НБЬ-описания проектов РС-кодеков. В числе инструментальных средств поддержки этой методики — библиотека НБЬ-описаний типовых функциональных узлов и блоков РС-кодеков, которые используются в качестве компонентов проектов и библиотека МАТЬАВ-функций, применяемых при расчёте параметров, используемых в описаниях узлов и блоков и при расчёте эталонных значений данных, используемых при верификации проектов;
4. исследованы особенности аппаратной реализации алгоритмов арифметических операций в полях Галуа. Особое внимание уделено операциям умножения, инверсии и возведения в степень как операциям, во многом определяющим сложность аппаратуры и быстродействие РС-кодеков. На базе проведенных исследований на языке описания аппаратуры Уеп1о§ разработана параметризованная библиотека НБЬ-описаний узлов, выполняющих арифметические операции в полях Галуа, ориентированная на аппаратную реализацию средствами ПЛИС. Проведён анализ зависимостей сложности аппаратуры этих функциональных узлов и её быстродействия как функции параметра поля Галуа — ш (число двоичных разрядов в символе поля). Разработанные библиотечные модули могут использоваться как базовые компоненты в проектах различных систем на базе полей Галуа (а не только РС-кодеков). Общее количество модулей — 7;
5. рассмотрены алгоритмы основных блоков РС-кодеков. Подробно исследованы алгоритмы блока решения ключевого уравнения в РС-декодере. Этот блок является наиболее сложной частью РС-декодера и критическим по задержкам. При сравнении алгоритмов Берлекэмпа-Месси (ВМ), Эвклида и Питерсона-Горенштейна-Цирлера было отдано предпочтение первому из-за характерной для алгоритма ВМ регулярной структуры и меньшей задержки критического пути — важного параметра в РС-декодерах, предназначенных для обработки высокоскоростного непрерывного потока данных. Рассмотрены три модификации алгоритма ВМ, получены теоретические оценки сложности их аппаратной реализации и быстродействия были уточнены в ходе экспериментов с НБЬ-описаниями блока решения ключевого уравнения. В целом эксперимент подтвердил их правильность с незначительной погрешностью. В состав НБЬ-библиотеки включены высокопараметризованные НОЬ-описания узлов и блоков семейства быстродействующих одноканальных РС-кодеков. Они обеспечивают реализацию на ПЛИС типа РРвА РС-кодеков с различными параметрами РС-кода (п, к, т, Ь, р(х), О(х)). Общее количество строк Уеп1о§ кода в библиотечных модулях более 4000;
6. предложенная автором библиотека высокоуровневых описаний функциональных узлов и блоков была использована в ходе создания проекта многоканального РС-декодера, работающего по стандарту 0.709, используемому в оптоволоконных каналах связи с рабочей частотой до 10.709 Гбит/с (вариант ОТи-2). Было рассмотрено и исследовано несколько вариантов структур многоканального РС-декодера. Автором предложен вариант проекта (количество строк кода Уеп1о§ — более 4700), который не только обладает преимуществами открытости кода, но и обладает гораздо более высокими схемотехническими параметрами, чем РС-декодер, построенный из двухканальных РС-декодеров — 1Р-ядер фирмы Х1ЫЫХ.
Высокоуровневость параметризованность, модульность и повторнопригодность НБЬ-описания обеспечивают возможность модификации отдельных блоков проекта и его реализации на микросхемах ПЛИС. Авторский вариант многоканального декодера (с применением принципа конвейеризации в модуле умножения) по сравнению с другими, в том числе с предлагаемым фирмой Х1ЬЖХ декодером на базе её двухканальных — 1Р-ядер имеет наилучшие характеристики: по максимальной тактовой частоте. Его пропускная способность в два раза превосходит аналогичный параметр декодера фирмы Х1ЬПЧХ. Его латентность в два раза меньше, а сложность схемы лишь 1.5 раза превосходит сложность декодера фирмы ХИЛЫХ. Отметим, что авторский декодер способен работать не только с вариантом ОТ11-2 стандарта С.709 (10 Гбит/с), но и с другим более скоростным вариантом ОТ11-3 (40 Гбит/с);
7. в работе большое внимание было уделено созданию инструментария для отладки и верификации проектов. В среде МАТЬАВ разработана библиотека МАТЬАВ-функций, реализующих функции типовых блоков РС-кодеков. Этот инструментарий (количество строк кода — более 3000) имеет дружественный пользовательский интерфейс. Он предназначен для тестирования НБЬ-описаний РС-кодеков и генерации значений параметров, используемых в НЮЬ-описаниях блоков РС-кодеков;
8. верификация проектов и библиотечных НБЬ-описаний модулей РС-кодеков была выполнена не только методом имитационного моделирования но и методом физического эксперимента. Выполнено тестирование проектов РС-кодеков на отладочной плате, оснащенной ПЛИС (в том числе проекта РС-кодека стандарта 0.709). Это лишний раз подтверждает достоверность научных и практических положений данной диссертации;
Из вышеперечисленного, следует, что цели диссертационной работы достигнуты, задачи поставленные перед автором работы, решены.
В плане дальнейших работ предполагается доработать базовый вариант РС-декодера (сократить аппаратные показатели блока решения ключевого уравнения и использовать мультиплексирование по времени, сократить до двух число используемых блоков памяти в
PC-декодере (это было показано в приложении Б п. модуля «ROMPOWINV»). Также предполагается усовершенствовать HDL-библиотеки, провести исследование переносимости проектов на ПЛИС и САПР других фирм, например Altera, провести физический эксперимент по проверке работы многоканального декодера в составе устройства, работающего в реальной оптоволоконной сети передачи данных.
Список информационных источников
1. Сергиенко А.Б. Цифровая обработка сигналов. - СПБ.: Питер, 2003.
2. Wikimedia Foundation Inc. [электронный ресурс]. URL:http://ru.wikipedia.org/wiki /Кодек (дата обращения: 02.07.2011).
3. ITU-T G.709/Y.1331. - Geneva: Telecommunication standardization sector of ITU, 2003.
4. XILINX Inc. LogiCORE IP Reed-Solomon Decoder - DS252 (v. 7.1). - San Jose U.S.A:, 2010.
5. ALTERA Inc. Enhacing High-speed telecommunications networks with FEC. - San Jose U.S.A: 2001.
6. OpenCores.org, IP-ядра с открытыми HDL-описаниями цифровых устройств, [электронный ресурс]. URL: www.opencores.org (дата обращения: 13.07.2006).
7. Rudy D.P, Reed-Solomon Decoder rs decoder (31,19), [электронный ресурс]. URL:http://opencores.org/project.rsdecoder31196 (дата обращения: 13.07.2006).
8. ООО «Иприум», Кодек Рида-Соломона, [электронный ресурс]. Систем, требования: Adobe Acrobat Reader. URL: http://www.iprium.ru/ipcores/id/rs-codec/ (дата обращения: 22.01.2011).
9. Mathworks Inc. MATLAB documentation R2011a. [electronic resource]. URL: http://www.mathworks.com/help/?scid=globalnav (дата обращения: 15.05.2011).
10. Поляков A.K. Языки VHDL и VERILOG в проектировании цифровой аппаратуры. - М.: Солон-Пресс, 2003.
11. IEEE Computer Society. IEEE Standard Verilog® Hardware description language (IEEE Std 1364). - New York U.S.A: The Institute of Electrical and Electronics Engineers Inc, 2001.
12. Planiktar S. Verilog HDL: A guide to digital design and synthesis 2nd edition. - U.S.A: Prentice Hall PTR, 2003.
13.XILINX Inc. ISE In-depth tutorial - UG695 (v. 13.1). - San Jose U.S.A:, 2011.
14. Mentor Graphics Inc. QuestaSim User's manual software (v. 6.6). - Wilsonville, U.S.A:, 2010.
15. Mentor Graphics Inc. [электронный ресурс]. URL: http://www.mentor.com/products/ fpga/ (дата обращения: 24.07.2007).
16. XILINX Inc. ML40x Evaluation Platform user guide - UG080 (v. 2.0). - San Jose U.S.A:, 2005.
17. XILINX Inc. VIRTEX-4 User Guide - UG070 (v. 2.2). - San Jose U.S.A: 2007.
18. XILINX Inc. SP605 Hardware User Guide - UG526 (v. 1.3). - San Jose U.S.A:, 2010.
19. XILINX Inc. SPARTAN-6 Family overview - DS160 (v. 1.6). - San Jose U.S.A: 2010.
20. Введение в САПР ПЛИС фирмы XILINX: Лабораторный практикум : методическое пособие / Поляков А.К., Синюхина Л.А., Тайлеб Н. [и др.] / под ред. Полякова А.К. и Дерюгина А.А. - М.: Издательский дом МЭИ, 2007.
21. Тайлеб ур. Мазуз Н., Поляков А.К., Реализация библиотеки арифметических операций над полиномами в поле Галуа на ПЛИС типа FPGA // Радиоэлектроника, электротехника и энергетика: 14-ая междунар. Науч.-техн. Конф. студентов и аспирантов МЭИ: тез докл. : В 3-х т., - М.: Издательский дом МЭИ, 2008. - Т.1. -С 345-346.
22. XILINX Inc. Reed Solomon Encoder - DS251 (v. 5.1). - San Jose U.S.A:, 2010.
23. XILINX Inc. Reed Solomon Decoder - DS 252 (v. 5.1). - San Jose U.S.A:, 2005.
24. Moon Т.К. Error correction coding, mathematical methods and algorithms. - New Jersey U.S.A: John Wiley & Sons, 2005.
25. Кларк Дж., Кейн Дж. Кодирование с исправлением ошибок в системах цифровой связи / пер. с англ. - М.: Радио и связь, 1987.
26.Блэйхут Р. Теория и практика кодов, контролирующих ошибки. Пер. с англ. - М.: Мир, 1986.
27. Золтарёв В.В., Овечкин Г.В. Помехоустойчивое кодирование. Методы и алгоритмы: справочник / под. ред. чл.-кор. РАН Зубарева Ю.Б. - М.: Горячая линия-Телеком, 2004.
28. Lin S., Costello D.J. Error control coding: Fundamentals and applications. - New Jersey U.S.A: Prentice Hall, 1983.
29. Sarwate D.V., Shanbhag N.R. High-speed Architectures for Reed-Solomon Decoders. -Evanston U.S.A: IEEE Transactions on Very Large Scale Integration (VLSI) systems, 2001. Vol. 9, №5.
30.Hanho L. An area-efficent euclidean algorithm block for Reed-Solomon decoder. -Washington U.S.A: Proceedings of the IEEE Computer Society Annual Symposium on VLSI, 2003.
31. Berlekamp E.R. Algebraic Coding Theory. - New York U.S.A: McGraw-Hill, 1968.
32. Кузелин M.O., Кнышев Д.А., Зотов В.Ю., Современные семейства ПЛИС фирмы XILINX: справочное пособие. - М.: Горячая линия -Телеком С.: ИЛ, 2004.
33.XILINX Inc. FPGA Device families. [electronic resource]. URL: http://www.XILINX.com/support/ (дата обращения: 27.07.2011).
34. XILINX Inc. Spartan-3E Starter Kit Board User Guide - UG230 (v. 1.0). - San Jose U.S.A:, 2006.
35. XILINX Inc. VIRTEX-4 Family overview - DS112 (v. 3.0). - San Jose U.S.A:, 2007.
36. XILINX Inc. VIRTEX-5 Family overview - DS100 (v. 5.0). - San Jose U.S.A:, 2009.
37. XILINX Inc. VIRTEX-6 Family overview - DS150 (v. 2.3). - San Jose U.S.A:, 2011.
38. XILINX Inc. 7 Series FPGA overview - DS180 (v. 1.6). - San Jose U.S.A:, 2011.
39. XILINX Inc. Xtreme DSP for VIRTEX-4 FPGA user guide - UG073 (v. 2.1). - San Jose U.S.A:, 2005.
40. XILINX Inc. XST User Guide for VIRTEX-4,VIRTEX-5, Spartan-3, and Newer CPLD Devices - UG627 (v. 12.4). - San Jose U.S.A:, 2010.
41. XILINX Inc. XST User Guide for VIRTEX-6, Spartan-6, and 7 Series Devices -UG687 (v. 13.1). - San Jose U.S.A:, 2011.
42. XILINX Inc. ISE Simulator (ISim) In-Depth Tutorial - UG682 (v. 12.3). - San Jose U.S.A:, 2010.
43. Perry D.L. Vhdl-programming by examples. - 4 edi. - U.S.A: McGrow-Hill, 2002.
44. Suterkland S., Davidman S., Flake P. SystemVerilog For Design. - U.S.A: Kluwer Academic, 2004.
45. Synopsys, Inc., Synplify Pro Logic synthesis for FPGA implemetation [электронный ресурс]. URL:http://www.synopsys.com/tools/implementation/fpgaimplementation/ fpgasvnthesis/pags/synplifVpro.aspx (дата обращения: 28.09.2011).
46. XILINX Inc. PlanAhead User Guide - UG632 (v. 12.1). - San Jose U.S.A:, 2010.
47. Зотов В.Ю. Проектирование цифровых устройств на основе ПЛИС фирмы XILINX в САПР Webpack ISE. - М.: Горячая линия-телеком, 2003.
48. Тарасов И.Е. Разработка цифровых устройств на основе ПЛИС XILINX с применением языка VHDL. - М.: Горячая линия-Телеком, 2005.
49. XILINX Inc. ChipScope Pro 12.1 Software and Cores, User Guide - UG029 (v.12.1). -San Jose U.S.A:, 2010.
50. Bergeron J. Writing test benches: Functional verification of HDL models. - U.S.A: Kluwer Academic, 2000.
51. The MathWorks Inc. EDA Simulator Link - User's Guide (v. 3.0). - U.S.A:, 2009.
52. The MathWorks Inc. Simulink HDL coder (v. 1) - User's Guide. - U.S.A:, 2009.
53.Тайлеб H., Поляков A.K., Тайлеб M. Некоторые вопросы перепроектирования старой цифровой аппаратуры на новой элементной базе ПЛИС типа FPGA // Радиоэлектроника, электротехника и энергетика: 13-ая междунар. Науч.-техн. Конф. студентов и аспирантов МЭИ: Тез. докл. : в 3-х т. -М.: Издательский дом МЭИ, 2007. - Т. 1. -С 418-419.
54. Логические ИС КР1533, КР1554: Справочник Часть 1 / Петровский И.И., Прибыльский А.В., Троян А.А. [и др.]. -М.: Бином, 1998.
55. Texas Instruments Inc. 54LS83A/DM54LS83A/DM74LS83A, 4-Bit Binary Adders with Fast Carry. - Dallas U.S.A:, 1989.
56. Texas Instruments Inc. 54LS08/DM54LS08/DM74LS08 Quad 2-Input AND Gates. -Dallas U.S.A:, 1989.
57. Texas Instruments Inc. DM54LS86/DM74LS86, Quad 2-Input Exclusive-OR Gates. -Dallas U.S.A:, 1989.
58. Texas Instruments Inc. SN54LS181, SN54S181, SN74LS181, SN74S181, ARITHMETIC LOGIC UNITS/FUNCTION GENERATORS. - Dallas U.S.A:, 1988.
59. Texas Instruments Inc. SN5404, SN54LS04, SN54S04, SN7404, SN74LS04, SN74S04, HEX INVERTERS. - Dallas U.S.A:, 2002.
60. Texas Instruments Inc. SN54S182, SN74S182, LOOK-AHEAD CARRY GENERATORS. - Dallas U.S.A:, 1988.
61. Timothy RW. Optical Transport Network (OTN) Tutorial, [электронный ресурс]. Систем, требования: Adobe Acrobat Reader. URL: http://www.itu.int/ITU-/study groups/com 15/otn/OTNtutorial.pdf (дата обращения: 02.07.2011).
62.Minsky H. RSCODE library (v. 1.3). [электронный ресурс]. URL: http://sourceforge.net/ projects/rscode/ (дата обращения: 03.09.2011).
63.Wikimedia Foundation Inc. [электронный ресурс]. URL: http://en.wikipedia.org/ wiki/IDEF 0 (дата обращения: 10.02.2012).
64.Тайлеб H., Поляков А.К., Тайлеб М. Библиотека VERILOG - описаний арифметических операций в поле Галуа // Современная Электроника. -М.: СТА-ПРЕСС, 2007. № 5, -С. 46-48.
65. Reyhani-Masoleh A., Hasan М.А. Low Complexity Bit Parallel Architectures for Polynomial Basis Multiplication over GF(2Am). - U.S.A: IEEE Transaction on Computers. 2004. Vol. 63, № 8.
66. Iliev N., Stine J., Juchimiec N. Digital Finite-Field for Reed-Solomon channel codes in GF(2A8) with programmablebasis polynomial, IIT VLSI LAB, 2003.
67. XILINX Inc. Gate Count Capacity Metrics for FPGAs - XAPP 059. - San Jose U.S.A:, 1997.
68. Тайлеб H., Поляков A.K. Проектирование кодеров и декодеров кода Рида
Соломона на ПЛИС типа FPGA // Сборник трудов научного семинара, посвященного памяти д.т.н., профессора З.М. БЕНЕНСОНА,- М.: ВЦ РАН, 2008. -С. 26-29.
69. The Math Works Inc. Communication Toolbox 4 User's Guide (Release 2010a). -U.S.A:, 2010.
70. XILINX Inc. LogiCORE IP Reed Solomon Encoder - DS251 (v. 7.1). - San Jose U.S.A:, 2010.
71. XILINX Inc. CORE Generator Help (v. 12.1). - San Jose U.S.A:, 2010.
72. Тайлеб-Мазуз H. Параметризованный проект высокоскоростного многоканального декодера кода Рида-Соломона // Вестник МЭИ. -М.: Издательский дом МЭИ, 2011. № 5, -С 112-118.
73. XILINX Inc. Forward Error Correction on ITU-G.709 Networks using Reed-Solomon Solutions — XAPP 952 (v. 1.0). - San Jose U.S.A:, 2007.
74. XILINX Inc. Online Store: Spartan-6 FPGA Devices [электронный ресурс]. URL: http://www.XILINX.com/onlinestore/silicon/onlinestores6.htm (дата обращения: 27.09.2011).
75. XILINX Inc. Online Store: Virtex-6 FPGA Devices [электронный ресурс]. URL: http://www.XILINX.com/onlinestore/silicon/onlinestorev6.htm (дата обращения: 27.09.2011).
76. Collins-Sussman В., Fitzpatrick В. W., Pilato С. M., Version Control with Subversion For Subversion 1.7, [электронный ресурс]. Систем, требования: Adobe Acrobat Reader. URL: http://svnbook.red-bean.eom/en/l.7/svn-book.pdf (дата обращения: 17.12.2011).
77. Loeliger J. Version Control with Git. -CA. U.S.A:, O'Reilly, 2009.
78. Chapman K. Get Smart About Reset: Think Local, Not Global WP272 (v. 1.0.1). - San Jose U.S.A: XILINX Inc., 2008.
79. CAST, Inc. 8051-Compatible, 8-Bit Microcontroller Core, [электронный ресурс]. URL: http://www.cast-inc.com/ip-cores/8051s/t8051/ (дата обращения: 02.11.2011).
-
Похожие работы
- Кодек с исправлением ошибок для комплексов телемеханики, повышающий достоверность передачи информационных пакетов нерегулярной длины
- Алгоритмическое и программное обеспечение системы для разработки кодеков помехоустойчивых кодов
- Разработка алгоритмов помехоустойчивого канального кодирования данных в сетях связи информационно-управляющих систем
- Исследование и разработка кодека с исправлением ошибок для скоростных телекоммуникационных систем
- Методы адаптивной коррекции параметров помехоустойчивого кода и их применение в перспективных системах радиосвязи
-
- Системный анализ, управление и обработка информации (по отраслям)
- Теория систем, теория автоматического регулирования и управления, системный анализ
- Элементы и устройства вычислительной техники и систем управления
- Автоматизация и управление технологическими процессами и производствами (по отраслям)
- Автоматизация технологических процессов и производств (в том числе по отраслям)
- Управление в биологических и медицинских системах (включая применения вычислительной техники)
- Управление в социальных и экономических системах
- Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
- Системы автоматизации проектирования (по отраслям)
- Телекоммуникационные системы и компьютерные сети
- Системы обработки информации и управления
- Вычислительные машины и системы
- Применение вычислительной техники, математического моделирования и математических методов в научных исследованиях (по отраслям наук)
- Теоретические основы информатики
- Математическое моделирование, численные методы и комплексы программ
- Методы и системы защиты информации, информационная безопасность