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

Санкт-Петербургский Государственный

Электротехнический Университет «ЛЭТИ»

Лабораторная работа №4

Выполнил: студенты гр. 3372

Сивков А. А.

Проверил: Фахми Ш. С.

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

2005 г.

Лабораторная работа №4

Цель работы: реализовать устройство выводящие на семи - сегментный

индикатор заданные числа в шестнадцатеричном виде, на вход поступает 4-х разрядный код выводимого числа. На семи – сегментный индикатор поступает 7-ми разрядный код, отвечающий за состояние всех сегментов индикатора.

Задание: реализовать возможность вывода на семи – сегментный индикатор

следующих шестнадцатеричных чисел: 1, 4, 5, 6, 7, 9, A, E, F.

Разработка:

Разрабатываемой схеме будет соответствовать следующая таблица истинности:

hexit

X0

X1

X2

X3

Ya

Yb

Yc

Yd

Ye

Yf

Yg

1

0

0

0

0

0

1

1

0

0

0

0

4

0

0

0

1

0

1

1

0

0

1

1

5

0

0

1

0

1

0

1

1

0

1

1

6

0

0

1

1

1

0

1

1

1

1

1

7

0

1

0

0

1

1

1

0

0

0

0

9

0

1

0

1

1

1

1

1

0

1

1

A

0

1

1

0

1

1

1

0

1

1

1

E

0

1

1

1

1

0

0

1

1

1

1

F

1

0

0

0

1

0

0

0

1

1

1

где: hexit – выводимое шестнадцатеричное число; X0 X1 X2 X3 – его 4-х разрядный код; Ya Yb … Yg – семиразрядный код поступающий на индикатор (Ya – соответствует сегменту ‘a’ семи - сегментного индикатора, Yg – сегменту ‘g’).

Нахождение функций: Минимизировав функции Ya - Yg картами Карно, получим:

Ya = X0 !X1 !X2 + !X0 X2 + X1 !X2

Yb = !X0 !X2 + X1 X2 !X3

Yc = !X1 !X2 + !X0 !X1 X2 + X1 X2 !X3

Yd = !X0 !X1 X2 + X1 X3

Ye = !X1 X2 X3 + X1 X2 + X0 !X2

Yf = !X0 X3 + !X0 X2 !X3 + X0 !X2

Yg = !X0 X3 + !X0 X2 !X3 + X0 !X2

для упрощения минимизации можно предположить, что на всех наборах X, больше 1000 значение функции равно 1 в «удобных» для минимизации картами Карно местах.

Логическая схема:

Проектирование цифрового устройства:

для реализации данного устройства необходимы следующие элементы:

CmdReg – регистр задающий X1, X2, X3, X4.

lpm_inv – логическое НЕ

lpm_and – логическое И

lpm_or – логическое ИЛИ

Output – выход с CLS

Все эти элементы находятся в Module library программы Triscend Fastchip. Перетаскиваем эти элементы из Module library на CSL. Настраиваем входы и выходы элементов в соответствии с функциональной схемой устройства, при этом lpm_inv имеет четыре входа, и четыре выхода (в этом элементе инвертируются значения x1, x2, x3, x4 на выходе получаем notx1, notx2, notx3, notx4). Элемент lpm_and имеет 9 входов и три выхода (по 1 выходу на 3 входа) всего потребуется 7 таких элементов. Элемент lpm_or имеет 3 (или 2) входа и 1 выход. В регистре CmdReg задаются значения x1, x2, x3, x4, значению регистра 0x05 соответствует последовательность 0, 1, 0, 1. Output используется для вывода значении a, b, c, d, e, f, g на семи - сегментный индикатор. Для того, чтобы присоединить выходы a, b, c, d, e, f, g к соответствующим ножкам (a – 127, b – 126, c – 101, d – 102, e – 103, f – 135, g - 136) необходимо в I/O editor (значок которого можно найти в правом углу) Output_A.x перетащить на нужные ножки.

Следующим этапом является Bind (приготовление проекта для использования в CSoC, проверка связей и т.д.), щелкаем на значок Bind в верху программы и ждем.

Загрузка проекта в устройство:

Из программы Fastchip запускаем программу Device link (одноименная кнопка на панели инструментов). Вводим IP адрес в Tools-> Device link options.

Нажимаем Configuration на панели инструментов -> Save and download.

Выводы:

В данной работе было спроектировано устройство преобразующее 4 бита входных данных в 7 бит выходных данных таким образом, чтобы для каждого входного набора на 7-сегментном индикаторе отображалась некоторая цифра (буква), указанная в задании.

Соседние файлы в папке Лабораторная работа №4