Проектирование устройства, выполняющего заданные функции преобразования цифровой информации
Содержание
1 Цель курсового проектирования
2 Задачи курсового проектирования
3 Расчетная часть курсового проектирования
1 Цель курсового проектирования
Целью курсового проекта является решение комплексной задачи, охватывающей основные разделы дисциплины «Цифровая электроника» и заключающейся в выполнении схемотехнического проектирования устройства, выполняющего заданные функции преобразования цифровой информации.
Объектом курсового проектирования являются синхронные пересчетные схемы.
2 Задачи курсового проектирования
В процессе работы над курсовым проектом должны быть рассмотрены и решены следующие задачи:
1) синтез структуры проектируемого устройства;
2) анализ сложности проектируемого устройства и выбор типа триггера, использование которого для реализации устройства позволяет минимизировать его сложность;
3) синтез триггерного устройства выбранного типа.
3 Расчетная часть курсового проектирования
Задача проектирования: спроектировать устройство, выполняющее функцию восьмиразрядного синхронного реверсивного сдвигающего регистра и синхронной реверсивной пересчетной схемы.
Таблица 1: Условные обозначения
типов переходов переменной
Значения в момент времени t |
Значения в момент времени t+1 |
Тип переходов |
Условные
обозначения перехода |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
|
1 |
0 |
1 |
|
1 |
1 |
1 |
1 |
Таблица 2: Описание реверсивного сдвигающего регистра
№ состояния |
t |
t+1 |
|
|||
y |
|
|
|
|
||
1 |
0 |
0 |
0 |
0 |
0 |
0 |
2 |
0 |
0 |
0 |
1 |
1 |
|
3 |
0 |
0 |
1 |
0 |
0 |
|
4 |
0 |
0 |
1 |
1 |
1 |
1 |
5 |
0 |
1 |
0 |
0 |
0 |
0 |
6 |
0 |
1 |
0 |
1 |
1 |
|
7 |
0 |
1 |
1 |
0 |
0 |
|
8 |
0 |
1 |
1 |
1 |
1 |
1 |
9 |
1 |
0 |
0 |
0 |
0 |
0 |
10 |
1 |
0 |
0 |
1 |
0 |
0 |
11 |
1 |
0 |
1 |
0 |
0 |
|
12 |
1 |
0 |
1 |
1 |
0 |
|
13 |
1 |
1 |
0 |
0 |
1 |
|
14 |
1 |
1 |
0 |
1 |
1 |
|
15 |
1 |
1 |
1 |
0 |
1 |
1 |
16 |
1 |
1 |
1 |
1 |
1 |
1 |
Карта Карно:
- карта
y |
00 |
01 |
11 |
10 |
00 |
0 |
0 |
|
0 |
01 |
|
|
|
0 |
11 |
1 |
1 |
1 |
|
10 |
|
|
1 |
|
Таблица 3: Словарное описание триггеров D и JK – типов
Q |
D - триггер |
JK - триггер |
D |
J K |
|
0 |
0 |
0 X |
1 |
1 |
X 0 |
|
1 |
1 X |
|
0 |
X 1 |
Карты Карно
- карта
- карта
- карта
После склеивания получаются следующие выражения:
=
+
=
+
=
+
Если доказать, что
+
= 1, а, следовательно,
=
,
то при построении схемы управления
достаточно разработать только схему
для J
входа, а на K
вход подать инвертированный J
сигнал с выхода этой схемы, что позволяет
получить выигрыш в аппаратной реализации.
+
=
+
+
+
=
(
+
)
+
(
+
)
= 1
Преобразование в базис И-НЕ:
=
+
=
=
+
=
(*)
Далее проводится оценка сложности комбинационной схемы управления (КСУ):
если в схеме используется прямой вход
если в схеме используется инверсный вход
S
= (2 + 1) + (1 + 1) + (1 + 1) + (2 + 1) + (1 + 1) + (1 + 1) = 14
S
= (2 + 1) + (1 + 1) + (1 + 1) = 7
Так как S
> S
,
следовательно, целесообразно использование
триггера D-типа.
Для построения схемы сдвигающего регистра, требуется определить выражения, отражающие логику формирования входных сигналов каждого разряда, учитывая кольцевую структуру регистра. Чтобы получить искомые выражения необходимо вместо индексов у переменных в формуле (*) подставить значения, соответствующие номерам разрядов от 1 до 8, при этом, если результат вычислений значения индекса окажется меньше или равен 0, то к результату следует прибавить число, указывающее количество разрядов в проектируемом кольцевом сдвигающем регистре; если результат окажется больше 8, то из него следует вычесть это число. Используя указанное правило, получим следующие выражения, описывающие логику формирования сигналов на входе JK-триггера каждого из 8-ми разрядов регистра:
=
=
=
=
=
=
=
=
=
Проектирование триггерного устройства. Исходными данными для проектирования являются функция внешних переходов триггера и условия переключения его выходного сигнала по отношению к синхросигналу С.
Таблица 4: Таблица внешних переходов D триггера
D |
|
|
|
0 |
0 |
0 |
0 |
0 |
1 |
0 |
|
1 |
0 |
1 |
|
1 |
1 |
1 |
1 |
Описание работы триггера можно представить в виде таблицы внутренних состояний и переходов триггерного устройства.
Таблица 5: Таблица внутренних состояний и переходов триггерного устройства
№ состояния |
Состояние сигналов CD |
Q выхода |
|||
00 |
01 |
11 |
10 |
||
1 |
(1) |
2 |
- |
4 |
0 |
2 |
1 |
(2) |
3 |
- |
0 |
3 |
- |
6 |
(3) |
- |
0 |
4 |
1 |
- |
- |
(4) |
0 |
5 |
(5) |
6 |
- |
8 |
1 |
6 |
5 |
(6) |
7 |
- |
1 |
7 |
- |
6 |
(7) |
- |
1 |
8 |
1 |
- |
- |
(8) |
1 |
Количество внутренних состояний можно сократить, объединяя строки таблицы. В данном случае наиболее целесообразным является объединение строк (1, 2, 4), (3), (5, 6, 7), (8).
Минимизированная таблица внутренних состояний и переходов D триггера имеет следующий вид:
Таблица 6
№ состояния |
Состояние сигналов CD |
Q выхода |
|||
0 |
1 |
11 |
10 |
||
1, 2, 4 |
(1) |
(2) |
3 |
(4) |
0 |
3 |
- |
6 |
3 |
- |
0 |
5, 6, 7 |
(5) |
(6) |
(7) |
8 |
1 |
8 |
1 |
- |
- |
(8) |
1 |
Преобразуем таблицу 6 в соответствии
с количеством новых состояний триггера
в таблицу 7. Так как число внутренних
состояний уменьшилось до S
= 4, то для кодирования этих состояний
достаточно k
= log
(S)
= 2 внутренних переменных. Обозначим их
как
и
.
Эту операцию необходимо выполнить
таким образом, чтобы в триггере не
возникали критические состязания между
сигналами обратных связей (состязания,
приводящие к несанкционированным
переходам тирггера из состояния в
состояние). Эти состязания будут
устранены, если коды соседних состояний
будут отличаться значениями не более,
чем в одном из разрядов, т. е. переходы
между соседними внутренними состояниями
будут реализованы изменением только
одной внутренней переменной. Составим
граф переходов, отвечающий этому
требованию, где 00, 01, 11, 10 – коды внутренних
состояний 1, 2, 3, 4 соответственно. Эти
коды определяются значениями переменных
и
,
например, код 01 соответствует значениям
= 0 и
= 1.
Граф переходов для 2-х переменных имеет следующий вид:
Минимизированная таблица 7 имеет следующий вид:
Таблица 7
№ состояния |
Состояние сигналов CD |
Q выхода |
|||
0 |
1 |
11 |
10 |
||
1, 2, 4 |
(1) |
(1) |
2 |
(1) |
0 |
3 |
- |
3 |
(2) |
- |
0 |
5, 6, 7 |
(3) |
(3) |
(3) |
4 |
1 |
8 |
1 |
- |
- |
(4) |
1 |
Так как число внутренних состояний
уменьшилось до S
= 4, то для кодирования этих состояний
достаточно k
= log
(4) = 2 внутренних переменных. Обозначим
их как
и
.
Каждому внутреннему состоянию триггера
поставим в соответствие набор значений
переменных
,
.
В соответствии с выбранным
вариантом кодирования состояний
триггера, минимизированная таблица D
– триггера будет представлять собой
совокупность 2-х таблиц, каждая из которых
определяет одну из функций
или
.
Таблица 8
Код
внутр. состояния
|
CD |
Q выхода |
|||
00 |
00 |
00 |
01 |
00 |
0 |
01 |
- |
11 |
01 |
- |
0 |
11 |
11 |
11 |
11 |
10 |
1 |
10 |
00 |
- |
- |
10 |
1 |
Кодированная таблица переходов
(таблица 8) представляет собой совокупность
двух таблиц, каждая из которых определяет
одну из функций
и
.
Данные этой таблицы позволяют описать
поведение переменных
и
в виде карт Карно:
для
для
После проведения склеивания в
картах Карно, необходимо определить
выражения для
и
:
=
+
+
=
+
+
=
+
Полученные уравнения позволяют
построить схему проектируемого триггера.
Перед построением схемы необходимо
преобразовать уравнения в требуемый
базис, предварительно вынеся за скобки
и
.
В базисе И-НЕ эти выражения будут иметь
следующий вид:
=
=
Схема проектируемого D триггера, построенного по полученным выражениям с использованием логических элементов 2И-НЕ имеет следующий вид: