Добавил:
t.me Установите расширение 'SyncShare' для решения тестов в LMS (Moodle): https://syncshare.naloaty.me/ . На всякий лучше отключить блокировщик рекламы с ним. || Как пользоваться ChatGPT в России: https://habr.com/ru/articles/704600/ || Также можно с VPNом заходить в bing.com через Edge браузер и общаться с Microsoft Bing Chat, но в последнее время они форсят Copilot и он мне меньше нравится. || Студент-заочник ГУАП, группа Z9411. Ещё учусь на 5-ом курсе 'Прикладной информатики' (09.03.03). || Если мой материал вам помог - можете написать мне 'Спасибо', мне будет очень приятно :) Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
z9411_КафкаРС_ЭБВСиС_лаб.docx
Скачиваний:
16
Добавлен:
18.05.2022
Размер:
1.24 Mб
Скачать

МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

федеральное государственное автономное образовательное учреждение высшего образования

«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ»

ИНСТИТУТ НЕПРЕРЫВНОГО И ДИСТАНЦИОННОГО ОБРАЗОВАНИЯ

КАФЕДРА 41

ОЦЕНКА

ПРЕПОДАВАТЕЛЬ

кандидат технических наук, доцент

В. И. Исаков

должность, уч. степень, звание

подпись, дата

инициалы, фамилия

ОТЧЕТ О ЛАБОРАТОРНОЙ РАБОТЕ №1

Освоение среды разработки цифровых схем Quartus II

по дисциплине: Элементарная база вычислительных систем и сетей

РАБОТУ ВЫПОЛНИЛ

СТУДЕНТ ГР. №

Z9411

Р. С. Кафка

номер группы

подпись, дата

инициалы, фамилия

Студенческий билет №

2019/3603

Санкт-Петербург 2021

Цель работы: знакомство с особенностями работы приложения Quartus II 9.0 в

процессе синтеза цифровых устройств на программируемых логических интегральных схемах (ПЛИС).

Ход работы:

  1. Запускаем приложение Quartus II

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

  3. Выполняем действия, описанные в разделе «Открытие проекта», учитывая, что названия имени проекта и имени модуля верхнего уровня должны совпадать с именем программы, указанным в tdf-файле после слова SUBDESIGN.

  4. Выполняем действия по созданию конструкторского файла, описанные в разделе «Создание конструкторского файла».

  5. Вводим в редактор системы Quartus II текст представленной программы для синтеза семисегментного индикатора, имеющего семь сегментов, размещаемых пространственно в порядке, показанном на приведенном ниже рисунке, заменив символы «х» в модуле объявления таблицы на 0 или 1 в зависимости от требуемой структуры. Каждый из сегментов индикатора имеет буквенное обозначение.

Рисунок 1 – Буквенное обозначение сегментов индикатора

Структура начертания символов на семисегментном индикаторе имеет следующий вид:

Рисунок 2 – Структура начертания символов символов на семисегментном индикаторе

Текст программы:

% Кафка Р.С., гр. Z9411, Дешифратор 7-сегментного индикатора %

SUBDESIGN Lab1 -- Название проекта

(

i[3..0] : INPUT; -- Объявление входных переменных

a, b, c, d, e, f, g : OUTPUT; -- Объявления входных и выходных переменных

)

BEGIN

TABLE -- Объявление таблицы истинности

i[3..0] => a, b, c, d, e, f, g;

H"0" => 1, 1, 1, 1, 1, 1, 0;

H"1" => 0, 1, 1, 0, 0, 0, 0;

H"2" => 1, 1, 0, 1, 1, 0, 1;

H"3" => 1, 1, 1, 1, 0, 0, 1;

H"4" => 0, 1, 1, 0, 0, 1, 1;

H"5" => 1, 0, 1, 1, 0, 1, 1;

H"6" => 1, 0, 1, 1, 1, 1, 1;

H"7" => 1, 1, 1, 0, 0, 0, 0;

H"8" => 1, 1, 1, 1, 1, 1, 1;

H"9" => 1, 1, 1, 1, 0, 1, 1;

H"A" => 1, 1, 1, 0, 1, 1, 1;

H"B" => 0, 0, 1, 1, 1, 1, 1;

H"C" => 1, 0, 0, 1, 1, 1, 1;

H"D" => 0, 1, 1, 1, 1, 0, 1;

H"E" => 1, 0, 0, 1, 1, 1, 1;

H"F" => 1, 0, 0, 0, 1, 1, 1;

END TABLE;

END;

Результат компиляции:

Рисунок 3 – Результат компиляции

  1. Назначаем микросхему, используемую для реализации проекта. Например, микросхему семейства MAX3000A – EPM3032ALC44-10.

  2. Выполняем компиляцию программы. Просматриваем параметры загрузки (используемые ресурсы микросхемы), тип и назначение выводов ПЛИС.

  3. Изменим назначения выводов микросхемы таким образом, чтобы для входных сигналов использовались выводы в меньшими номерами, а следом за ними располагались выводы выходных сигналов. Назначать можно только комбинированные выводы I/O (input/output). Назначения сделаем в следующем порядке i[0], i[1], i[2], i[3], a, b, с, d, e, f, g.

Назначения выводов:

Рисунок 4 – Назначения выводов первой микросхемы

  1. Взяв за основу программу ранее выполненного проекта, составьте программы для синтеза комбинационных устройств по приведенным на рис. 8 схемам (a и b). Программа должна содержать название проекта, объявления входных и выходных переменных, заключенные в круглых скобках, логические выражения, размещенные в операторных скобках BEGIN – ЕND.

9.1. Синтезировать схему дешифратора.

Рисунок 5 – Схема дешифратора

Таблица истинности:

Таблица 1

Е

А1

А0

NA0

NA1

NE

Y0

Y1

Y2

Y3

Y4

Y5

Y6

Y7

NA0 & NA1 & NE

NA1 & A0 & NE

A1 & NA0 & NE

A0 & A1 & NE

NA1 & NA0 & E

NA1 & A0 & E

A1 & NA0 & E

A0 & A1 & E

H"0"

1

1

1

0

0

0

0

0

0

0

0

0

0

1

H"1"

1

1

0

1

0

0

0

0

0

0

0

0

1

0

H"2"

1

0

1

0

1

0

0

0

0

0

0

1

0

0

H"3"

1

0

0

1

1

0

0

0

0

0

1

0

0

0

H"4"

0

1

1

0

0

1

0

0

0

1

0

0

0

0

H"5"

0

1

0

1

0

1

0

0

1

0

0

0

0

0

H"6"

0

0

1

0

1

1

0

1

0

0

0

0

0

0

H"7"

0

0

0

1

1

1

1

0

0

0

0

0

0

0

Текст программы:

SUBDESIGN Lab1 -- Название проекта

(

A0, A1, E: INPUT; -- Объявление входных переменных

Y[7..0]: OUTPUT; -- Объявление выходных переменных

)

BEGIN

Y0 = !(!A0&!A1&!E);

Y1 = !(A0&!A1&!E);

Y2 = !(!A0&A1&!E);

Y3 = !(A0&A1&!E);

Y4 = !(!A0&!A1&E);

Y5 = !(A0&!A1&E);

Y6 = !(!A0&A1&E);

Y7 = !(A0&A1&E);

END;

Выбираем микросхему: MAX3000A – EPM3032ALC44-10.

Назначения выводов:

Рисунок 6 – Назначения выводов второй микросхемы