МИЭТ:ИЭМС. Консультационный центр.

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » МИЭТ:ИЭМС. Консультационный центр. » Логическое проектирование » 2014 год. Курсовые ОП ЭКБ (бывший КМИП). Пояснения. Вопросы.


2014 год. Курсовые ОП ЭКБ (бывший КМИП). Пояснения. Вопросы.

Сообщений 1 страница 6 из 6

1

Вариант командного задания 1

Полное название звучит так: "Управляющий блок светофора, длительности Т={t0; t1; t2; t3}, с индикацией времени на 7-сегментных индикаторах".

Как выглядит работа светофора все знают. В каждый момент времени его "состояние" можно определить двумя параметрами: текущим цветом; временем до смены цвета.
В задании заданы длительности в секундах каждого из цветов светофора, работающего по циклу  Зеленый-Желтый-Красный-Желтый.
Каждому из этих "цветов" можно сопоставить порядковый номер (Num).
Например:
зеленый - Num=0,
желтый 1 - Num=1,
красный - Num=2,
желтый 2 - Num=3.
(Здесь главное, чтобы номера цветов отличались друг от друга, т.е. порядок может быть любым)

В каждом из цветовых режимов оставшееся время может принимать значения от ti-1 до 0 (т.е. суммарное время жизни цвета равно ti)
(Это был опять пример. Порядок отсчета времени может быть любым, но обычный отсчет по таймеру - один из наиболее удобных вариантов)

Задача устройства на основании текущих значений входов устройства (оставшегося времени и цвета) вычислить значения выходов (новые значения цвета и времени, которые будут действовать в следующую секунду).

Пара примеров (t0=10, t1=3):
Num_IN=0, t_IN=5 => Num_OUT=0, t_OUT=4;           <- т.е. пока не вышло время, уменьшаем таймер
Num_IN=0, t_IN=0 => Num_OUT=1, t_OUT=t1-1=2.   <- т.е. когда время вышло, меняем цвет и устанавливаем таймер на соответствующий максимум

Внутри устройства оставшееся время можно кодировать любым кодом. Основной выбор надо сделать между двоичным кодом и двоично-десятичным. (Еще можно использовать код Грея или любой другой, какой понравится.)
От этого выбора зависит схема выходного блока преобразования t_OUT в код семисегментного индикатора.

Про код семисегментного индикатора расписывать ничего не буду. На эту тему книжки и "гугл" содержат исчерпывающую информацию.

0

2

Вариант командного задания 2

Полное название звучит так: "Делитель по модулю D числа бесконечной разрядности, поступающего на вход старшим битом вперед. С индикацией остатка на 7-сегментных индикаторах".

Для начала что означает "старшим битом вперед". Имеется в виду, что на каждом шаге работы устройства к двоичному числу справа дописывается цифра 0 или 1.
Например:
1 = 1
10 = 2+0 = 2
100 = 4 + 0 = 4
1001 = 8 + 1 = 9
10011 = 18 + 1 = 19
...
Видно, что при таком вводе цифр числа, новое число будет равно удвоенному предыдущему числу плюс новая цифра (A).

Xn+1 = 2*Xn + A

Бесконечная разрядность означает, что число цифр введенного таким способом числа может быть бесконечным. Отсюда ясно, что само  введенное число полностью не известно.

Разрабатываемое устройство на выходе должно показывать значение остатка от деления полного введенного числа на D.
Т.е. остаток должен быть правильным, хотя на каждом шаге работы мы не можем сказать чему равнялось полное введенное число из бесконечного числа двоичных цифр.

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

Как и в первом варианте, выходное значение остатка надо выводить через преобразователь двоичного кода в код семисегментного индикатора.

0

3

Вариант командного задания 3

Полное название звучит так: "Делитель по модулю D числа бесконечной разрядности, поступающего на вход младшим битом вперед. С индикацией остатка на 7-сегментных индикаторах".

Устройство, практически такое же, что и во втором варианте. Отличие в том, что на каждом шаге работы новая цифра 0 или 1 дописывается к числу слева.
Например:
0 = 0
00 = 0 + 0*2 = 0
100 = 0 + 1*4 = 4
0100 = 4 + 0*8 = 4
10100 = 4 + 1*16 = 20
...
Видно, что при таком вводе цифр числа, новое значение будет равно сумме пердыдущего числа с произведением новой цифры A на 2 в степени, равной количеству цифр введенных ранее.

Xn+1 = Xn + A*2n

Бесконечная разрядность означает, что число цифр введенного таким способом числа может быть бесконечным. Отсюда ясно, что само  введенное число полностью не известно.

Разрабатываемое устройство на выходе должно показывать значение остатка от деления полного введенного числа на D.
Т.е. остаток должен быть правильным, хотя на каждом шаге работы мы не можем сказать чему равнялось полное введенное число из бесконечного числа двоичных цифр.

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

Как и в первом варианте, выходное значение остатка надо выводить через преобразователь двоичного кода в код семисегментного индикатора.

P.S.: в этом варианте еще потребуется дополнительный входной сигнал - "флаг" самой первой цифры. (т.е. у самой первой цифры числа этот флаг равен 0, а у всех остальных 1)

0

4

Вариант командного задания 4

Полное название звучит так: "Вычитающее устройство знакопеременных 4-разрядных чисел с индикацией аргументов на 7-сегментных индикаторах в десятичной системе".

В названии выделены переменные данные этого типа командного задания.

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

На семисегментные индикаторы по заданию требуется выводить либо аргументы (входные числа), либо разность (выходное число), либо и то и другое.

См. конкретный вариант этого типа задания.

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

0

5

Вариант командного задания 5

Полное название звучит так: "Управляющий блок автомата продажи напитков, цены P={р1; р2; р3; р4}, с индикацией суммы сдачи на 7-сегментных индикаторах".

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

Состав монет, которые может принимать автомат, на выбор:
от 50коп. до 10руб.;
от 10коп. до 10руб.;
от 1руб. до 10руб.

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

0

6

Индивидуальные варианты

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

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

Компараторы и сумматоры должны иметь входы/выходы повышения разрядности.

(про мажоритарные элементы напишу чуть позже)

0


Вы здесь » МИЭТ:ИЭМС. Консультационный центр. » Логическое проектирование » 2014 год. Курсовые ОП ЭКБ (бывший КМИП). Пояснения. Вопросы.