Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Sb96713

.pdf
Скачиваний:
3
Добавлен:
13.02.2021
Размер:
901.25 Кб
Скачать

МИНОБРНАУКИ РОССИИ

–––––––––––––––––––––––––––––––––––––––––––––––––––

Санкт-Петербургский государственный электротехнический университет «ЛЭТИ» им. В. И. Ульянова (Ленина)

–––––––––––––––––––––––––––––––––––––––––––

О. И. БУРЕНЕВА

ЭЛЕМЕНТЫ СИСТЕМ НА КРИСТАЛЛЕ

Учебно-методическое пособие

Санкт-Петербург Издательство СПбГЭТУ «ЛЭТИ»

2018

УДК 004.3(07) ББК З973.2-018я7

Б90

Буренева О. И.

Б90 Элементы систем на кристалле: учеб.-метод. пособие. СПб.: Изд-во СПбГЭТУ «ЛЭТИ», 2018. 32 с.

ISBN 978-5-7629-2264-7

Содержит описания лабораторных работ по созданию и отладке систем на базе программируемых логических микросхем.

Предназначено для подготовки магистров по направлению «Информатика и вычислительная техника» по программе «Микросистемные компьютерные технологии: системы на кристалле». Может быть использовано и при подготовке специалистов и бакалавров по профилю «Вычислительные машины, комплексы, системы и сети», а также специалистами, разрабатывающими электронную аппаратуру с использованием программируемых логических интегральных схем.

УДК 004.3(07)

ББК З973.2-018я7

Рецензент канд. физ.-мат. наук И. А. Хахаев (ИТМО).

Утверждено редакционно-издательским советом университета

в качестве учебно-методического пособия

ISBN 978-5-7629-2264-7

© СПбГЭТУ «ЛЭТИ», 2018

2

Введение

Современные программируемые логические интегральные схемы (ПЛИС) являются функционально-сложными элементами и все чаще используются при разработке встроенных систем. Каждое новое поколение FPGA отличается более высокими скоростями работы, большей степенью интеграции, увеличенным объемом памяти и более широкой номенклатурой специализированных элементов [1].

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

Цикл включает в себя восемь лабораторных работ. Первые три работы направлены на получение навыков проектирования цифровых устройств различного типа на ПЛИС с последующим анализом характеристик результата с использованием специализированных программных средств среды проектирования Quartus II. Последующие работы ориентированы на освоение способов настройки и особенностей использования специализированных элементов систем на кристалле: распределенной и блочной памяти, процессорного soft-ядра, проектирование цифрового фильтра с использованием средств распределенной арифметики. Одна работа предполагает знакомство с маршрутом проектирования с использованием сторонней САПР, результаты работы которой используются в имплементирующей системе. Восьмая работа посвящена знакомству с JTAG-интерфейсом.

Во всех работах предусмотрено выполнение моделирования разработанных устройств, а также проведение макетных экспериментов, предполагающих использование отладочного набора с установленными ПЛИС компании «Altera», например производимого фирмой «TERASIC» (DE0, DE1, DE0Nano или аналогичные).

3

Лабораторная работа 1 ПРОЕКТИРОВАНИЕ КОМБИНАЦИОННОГО УЗЛА

Цель работы состоит в освоении маршрута проектирования цифровых комбинационных устройств в системе проектирования Quartus II и получении навыков моделирования, анализа результатов проектирования и имплементации проекта в учебную плату.

Краткие теоретические сведения

Под комбинационным узлом (КУ) понимается узел, значения выходных сигналов которого в каждый момент времени полностью определяются значениями сигналов на его входах. Для описания функционирования КУ используются функции алгебры логики, которые могут быть представлены таблицей истинности, аналитическим выражением и другими способами.

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

В качестве универсального логического модуля для воспроизведения функций КУ может быть использован мультиплексор. Произвольную функцию от аргументов, поступающих на управляющие входы, можно воспроизвести методом «мультиплексор-константа», подавая на его информационные входы константы 0 и 1. Альтернативой служит метод «мультиплексорфункция», при котором на управляющие входы мультиплексора подается часть входных переменных, а на информационные – остаточные функции, сформированные из оставшихся аргументов.

Третий вариант реализации функций КУ связан с использованием дешифратора: на выходах дешифратора вырабатываются все минтермы, которые можно составить из заданного числа аргументов, а логическая функция в совершенной дизъюнктивной нормальной форме есть дизъюнкция некоторого числа таких минтермов. Для получения функции требуется собрать нужные минтермы по схеме ИЛИ.

Задание на работу

1. Используя последовательность действий, приведенную в приложении, разработать в САПР Quartus II проекты, реализующие функцию следующими способами:

– с использованием элементарного логического базиса;

4

на основе LPM-модуля мультиплексора (4:1) и логических элементов по схеме «мультиплексор-функция»;

на основе LPM-модуля дешифратора.

2.Для каждого проекта оценить затраты на реализацию, проанализировать RTL-представление проекта, иерархию использованных примитивов, внутренних регистров и настройки LUT-таблиц, выполнить моделирование проекта.

3.Собрать общий проект, включив в него разработанные преобразователи в качестве отдельных параллельно работающих блоков. Проанализировать RTL-представление проекта, иерархию использованных элементов; определить временные характеристики проекта с использованием анализатора Timing Analyzer.

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

Содержание отчета

1.По каждому из трех проектов отчет должен содержать: задание на работу; описание процесса проектирования; исходные файлы (схемные файлы или языковые описания); результаты анализа затрат оборудования, RTLописаний проекта и иерархии использованных элементов; временные диаграммы работы.

2.Для общего проекта верхнего уровня необходимо представить: исходный файл; результаты анализа RTL-представления, иерархию использованных примитивов; результаты моделирования; результаты временного анализа проекта с использованием Timing Analyzer; описание результатов макетирования.

3.Выводы по работе.

Варианты заданий

Вариант

Функция

Вариант

Функция

 

 

 

 

1

0, 2, 3, 4, 7, 9, 13, 15

5

0, 1, 3, 6, 7, 10, 12, 15

2

1, 2, 3, 5, 10, 11, 14

6

1, 2, 4, 6, 8, 10, 12, 14

3

2, 4, 5, 9, 10, 14, 15

7

2, 3, 5, 8, 9, 13, 14, 15

4

3, 4, 5, 7, 8, 10, 13, 14

8

3, 5, 7, 9, 11, 13, 15

5

Лабораторная работа 2 ПРОЕКТИРОВАНИЕ ПОСЛЕДОВАТЕЛЬНОСТНОГО УСТРОЙСТВА

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

Краткие сведения о проектировании

Последовательностные устройства отличаются от комбинационных цепей наличием элементов памяти, что делает возможным организацию в них обратных связей [2]. Такие устройства (автоматы) за счет элементов памяти (ЭП), имеют некоторое внутреннее состояние Q, определяемое совокупностью состояний всех ЭП. В зависимости от внутреннего состояния, автомат различно реагирует на один и тот же вектор входных сигналов Х, т. е. набор входных сигналов и внутреннее состояние автомата определяют новое состояние Qн = f (Q, X) и вектор выходных переменных Y = f (Q) для автомата Мура и Y = f (Q, X) для автомата Мили, где Q и Qн – состояния автомата до и после подачи входных сигналов.

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

Автоматы в каноническом представлении разделяют на две части: память и комбинационные цепи (КЦ). КЦ вырабатывают выходные сигналы и сигналы перевода элементов памяти в новое состояние.

Задание на работу

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

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

6

2.Подготовить проект схемы автомата в САПР Quartus II, выполнить его моделирование, оценить затраты на реализацию, проанализировать RTLпредставление проекта, иерархию использованных примитивов, внутренних регистров и настройки LUT-таблиц.

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

Варианты заданий

1.4-разрядный счетчик в коде Грея.

2.4-разрядный счетчик в коде Джонсона.

3.4-разрядный счетчик в коде Хемминга 1–4 (контрольные биты комбинационные).

4.4-разрядный суммирующий счетчик по модулю 11.

5.4-разрядный вычитающий счетчик по модулю 9.

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

Содержание отчета

Отчет должен содержать: задание на работу; исходные файлы с описанием схемы; временные диаграммы работы, полученные в результате моделирования; RTL-описание проекта, оценки по затратам оборудования; описание результатов макетирования, выводы по работе.

Лабораторная работа 3 КАНАЛЫ ПОСЛЕДОВАТЕЛЬНОЙ ПЕРЕДАЧИ ДАННЫХ

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

Краткие сведения

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

7

данных и общий проводник. Дополнительно могут использоваться сигналы квитирования. Временная диаграмма работы последовательного синхронного канала приведена на (рис. 3.1, а). Передача данных начинается с пересылки в приемник стартового сигнала FS, получив который, приемник начинает побитовый в соответствии с импульсами Clk прием данных по линии D с их преобразованием в параллельный код.

Clk

 

 

 

Cтарт-

Стоп-

 

 

 

бит

бит

D

0 1 2 3 4

n-1

 

D

0 1 2 3 4 n-1

FS

 

 

 

 

 

 

а

 

 

 

б

Рис. 3.1. Формат последовательной передачи данных: а – синхронный режим; б – асинхронный режим

При асинхронной последовательной передаче данных (рис. 3.1, б) передатчик и приемник используют отдельные согласованные генераторы синхроимпульсов. В отсутствие передачи на линии данных сохраняется единичный сигнал. Передатчик инициирует начало передачи нулевым сигналом «старт», его длительность равна длительности информационного бита. После старт-бита следуют информационные биты, за которыми может передаваться бит паритета. Завершается передача данных сигналом «стоп» – переводом линии данных в единичное состояние, обычно на время, равное двум длительностям информационного бита.

Задание на работу

Работа состоит из двух частей. В первой части выполняется проектирование и отладка элементов синхронного, а во второй – асинхронного последовательного интерфейса. Работа выполняется по следующим этапам.

1.Подготовить исходные файлы для реализации синхронных приемника

ипередатчика в соответствии с заданным вариантом.

2.Разработать проект тестирования приемника и передатчика (рис. 3.2).

Clk

 

Clk

 

Dout[0..n-1]

 

D

 

Din[0..n-1]

Передатчик

Приемник

Ready

FS

Start

 

 

Error

 

 

 

Рис. 3.2. Схема тестирования последовательного канала

3.Выполнить моделирование устройств.

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

8

чика Din формируются на переключателях, сигнал Start, инициирующий передачу данных, подключить к кнопке. Выходные сигналы передатчика D, FS, Clk выводятся на внешние контакты микросхемы, с подключением к разъему общего назначения. Входные сигналы приемника также через внешние контакты микросхемы, соединяются с контактами разъема общего назначения, а выходные сигналы Data и Ready выводятся на светодиоды. Для визуального наблюдения работы канала приема-передачи в процессе макетирования рекомендуется задать частоту Clk=1Гц и дополнительно на индикацию выводить сигналы, соответствующие значениям принимаемых битов. Для демонстрации совместной работы приемника и передатчика необходимо соединить выходы передатчика и входы приемника на разъеме и в процессе макетирования имитировать разрыв соединения для выявления ошибки передачи.

5.Скорректировать описание приемника и передатчика для реализации асинхронной передачи. Выполнить задания пп. 2–4 для спроектированных асинхронных узлов.

6.Разработать проект тестирования приемника и передатчика, при этом для связи между ними будет использована единственная линия D.

Варианты заданий

Вариант

Биты: данные/контроль

Вариант

Биты: данные/контроль

 

/стоп-бит(-ы)

 

/стоп-бит(-ы)

 

 

 

 

1

5/чет./1

5

5/нечет./2

 

 

 

 

2

6/чет./1

6

6/нечет./2

 

 

 

 

3

7/нечет./2

7

7/чет./1

 

 

 

 

4

8/нечет./2

8

8/чет./1

 

 

 

 

Содержание отчета

Отчет по частям 1 и 2 должен содержать следующую информацию: задание на работу; исходные файлы описания приемника и передатчика, а также обобщенную схему тестирования проекта; RTL-описание проекта, оценки по затратам оборудования; результаты моделирования в виде временных диаграмм с комментариями; описание результатов макетирования; выводы по работе.

9

Лабораторная работа 4 ПРИМЕНЕНИЕ ВСТРОЕННЫХ БЛОКОВ ПАМЯТИ

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

Краткие теоретические сведения

Память в FPGA представлена двумя ресурсами: блочной (встроенной) и распределенной. Встроенные блоки памяти реализованы в ПЛИС аппаратно, т. е. часть кристалла выделена под организацию памяти и не может быть использована по другому назначению. Количество и емкость таких блоков зависит от конкретной ПЛИС. Распределенная память – это LUT-блоки ячеек ПЛИС, которые также пригодны для хранения данных, информация в этом случае будет «распределена» по площади кристалла. Емкость такой памяти значительно меньше, чем емкость блоков, однако она пригодна для решения определенного класса задач, связанных с буферизацией данных.

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

В библиотеке параметризированных модулей САПР Quartus II имеются следующие модули ROM/RAM-памяти: lpm_ram_dq – параметризованная RAM с раздельными портами входа-выхода; lpm_ram_dp – параметризованная двухпортовая RAM; alt3pram – параметризованная трехпортовая RAM; lpm_rom – параметризованная ROM; lpm_ram_io – параметризованная RAM с единым портом входа-выхода.

Задание на работу

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

10

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]