Контрольная работа: Проектирование устройства, выполняющего заданные функции преобразования цифровой информации
Содержание
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
Преобразование в базис И-НЕ:
= ![]()
+ ![]()
= ![]()
= ![]()
+ ![]()
=
(*)
Далее проводится оценка сложности комбинационной схемы управления (КСУ):
1- если в схеме используется прямой вход
2- если в схеме используется инверсный вход
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И-НЕ имеет следующий вид:
