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

книги / Схемотехника. Моделирование цифровых автоматов в САПР Ковчег

.pdf
Скачиваний:
7
Добавлен:
12.11.2023
Размер:
4.35 Mб
Скачать

1.3. Тестирование цифровых схем

Следующим шагом является тестирование правильности функционирования микросхемы. Для этого находим на панели управления команду «Тесты», этот шаг необходим для того, чтобы в дальнейшем получить временную диаграмму. В этом тесте нам надо задать нашу переключательную функцию. Вначале программа предлагает сформированный по умолчанию тест. Для того чтобы его изменить, необходимо записать столбец каждой переменной через запятую (рис. 30). Для обозначения выходов при 0 используют L или l, для 1 – H или h.

Рис. 30. Тест для переключательной функции

После написания теста необходимо произвести проверку, нажав «Трансляция теста». После проверки должно появиться окно, которое сообщит о количестве ошибок или же их отсутствии

(рис. 31).

Рис. 31. Результаты проверки правильности написания теста

1.4. Контрольные точки

Следующим шагом являются «Контрольные точки». Эти «точки» программа формирует сама. Контрольные точки захватывают входы и выходы. Они формируют то, что будет отображаться на временной диаграмме (рис. 32).

21

Рис. 32. Контрольные точки

Далее необходимо нажать в панели управления «Транслировать контрольные точки». После проверки появится следующее сообщение (рис. 33).

Рис. 33. Трансляция контрольных точек

1.5. Временное моделирование

На панели команд необходимо нажать «Моделирование», далее – команда «Моделировать». Все данные берутся из тестов и контрольных точек (рис. 34).

Рис. 34. Временная диаграмма

22

Практическая работа № 2 СИНТЕЗ И ИССЛЕДОВАНИЕ ПОСЛЕДОВАТЕЛЬНОСТНОГО

АВТОМАТА-АКЦЕПТОРА (РАСПОЗНАВАТЕЛЯ) НА «ЖЕСТКОЙ» ЛОГИКЕ

Автомат – это математическая модель вычислительного процесса. Классический автомат задается следующей пятеркой:

A {X ,Y ,Z,ψ,φ},

(1)

 

где X – множество входов; Y – множество внутренних состояний; Z – множество выходов; φ – функция переходов; ψ – функция выходов.

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

Известны два классических абстрактных автомата – автомат Мили и автомат Мура, которые отличаются функцией выходов. В автомате Мили ψ [x (t), y (t)], то есть функция выхода определяется состоянием входа и памяти, а в автомате Мура ψ [y (t)], то есть функция выхода определяется только состоянием памяти.

Еще одним распространенным дополнением модели является явное указание на начальное состояние A0. Это необходимо, так как в аппаратной реализации при включении питания возникают переходные процессы и помехи, которые могут интерпретироваться автоматом. Поэтому важно начинать работу автомата с первого устойчивого состояния.

Если Y = { }, то мы получим комбинационный автомат, иначе последовательностный.

Соответственно, задача разработчика автомата задать все математические объекты, представленные в модели автомата. Рассмотрим синтез автомата на примере задачи распознавания заданной последовательности (кодовый замок).

23

Задание: синтезировать автомат-распознаватель заданной последовательности двоичного двухразрядного сигнала на «жесткой» логике.

Пример. Пусть необходимо распознавать последовательность 01023 двоичного двухразрядного сигнала. При ее получении сформировать выходной сигнал z1 «верно», при нарушении последовательности – сигнал z2 «неверно».

Получим переключательные функции (ПФ), описывающие соответствующий конечный автомат – распознаватель последовательности (рис. 1).

Рис. 1. Автомат-распознаватель

Последовательность поступает на входы {a, b} конечного автомата (КА):

 

a

0

0

0

1

1

 

b

0

1

0

0

1

Это правильная последовательность изменения входов a, b в соответствии с заданием.

Возможны и неправильные последовательности из алфавита

{0, 1, 2, 3}.

01023 z1 =1 правильная

Построим первичную таблицу переходов (ПТП) (табл. 1) конечного автомата – распознавателя последовательности 01023.

24

 

 

 

 

 

 

Таблица 1

 

 

 

Первичная таблица переходов

 

Номер

 

 

 

ab

 

z2

z1

 

 

 

 

 

такта

00

01

11

10

 

 

 

 

 

1

 

1

2

 

6

0

0

2

 

3

2

7

 

0

0

 

 

 

3

 

3

8

 

4

0

0

4

 

9

 

5

4

0

0

5

 

 

 

5

 

0

1

6

 

 

 

 

6

1

0

7

 

 

 

7

 

1

0

8

 

 

8

 

 

1

0

9

 

9

 

 

 

1

0

Получим

минимизированную

таблицу

переходов

(МТП)

(табл. 2).

 

 

 

 

 

 

 

Теперь получим таблицу переходов-выходов (ТПВ) (табл. 3).

Получаем все ПФ, описывающие наш автомат в символьной

форме:

 

 

 

 

 

 

 

По этим ПФ можно построить схему автомата, предваритель-

но проведя минимизацию.

 

 

 

 

25

 

 

 

 

 

Таблица 2

 

Минимизированная таблица переходов

 

Сливаемые

Номер

 

 

ab

 

группы

 

 

 

 

строки

00

01

11

10

строк

 

 

 

 

 

1,6

I

1

2

 

6

 

 

2,7

II

3

2

7

 

 

 

3,8

III

3

8

 

4

 

 

4,5,9

IV

 

5

4

 

 

 

 

 

Таблица 3

 

Таблица переходов-выходов

 

y2 y1 (t)

00

01

11

10

 

00

0

1

3

2

 

 

 

 

 

 

01

4

5

7

6

 

 

 

 

 

 

11

12

13

15

14

 

 

 

 

 

 

10

8

9

11

10

 

 

 

 

 

 

 

 

 

 

 

y2 y1(t 1)

 

 

 

 

 

z2 z1

26

 

 

 

 

 

Используя ТПВ как карту Карно, получаем:

y2(t 1) y2 y1ab;

y1(t 1) ab ay1 y1ab; z2 y2a y2 ab y2 a y1; z1 aby2.

Выполнение эксперимента

Соберем схему автомата в произвольном базисе И, ИЛИ, НЕ

(рис. 2).

Рис. 2. Схема автомата – распознавателя последовательности 01023

Здесь y2 (t+1) и y1 (t+1) – входы соответствующих D-тригге- ров. Подготовим данные для временного моделирования (рис. 3).

27

Рис. 3. Подготовка временного моделирования

Для задания требуемой последовательности нужно прописать значения a и b, дублируем их. Для обозначения выходов при 0 – используют L или l, для 1 – H или h.

Выполним моделирование (рис. 4).

Рис. 4. Результаты моделирования последовательности 01023

Видим формирование 1 по z1. Сформулируем неправильную последовательность 02 (рис. 5).

Рис. 5. Моделирование последовательности 02

28

Видим, что формируется z2 =1. Сформируем неправильную последовательность 013 (рис. 6).

Рис. 6. Моделирование последовательности 013

Сформируем неправильную последовательность 0101 (рис. 7).

Рис. 7. Моделирование последовательности 0101

Сформируем неправильную последовательность 01020 (рис. 8).

Рис. 8. Моделирование последовательности 01020

29

Практическая работа № 3 СИНТЕЗ И ИССЛЕДОВАНИЕ СХЕМЫ

МИКРОПРОГРАММНОГО УСТРОЙСТВА УПРАВЛЕНИЯ НА «ЖЕСТКОЙ» ЛОГИКЕ ПО ЗАДАННОЙ ГСА

Задание: синтезировать микропрограммное устройство управления на «жесткой» логике по заданной графической схеме алгоритма (ГСА).

Пример. Построим микропрограммное устройство управления (МПУУ) на «жесткой» логике по заданной ГСА (рис. 1).

Начало

z1

z2

1

x1

0

z3

0

x2

 

 

 

 

 

z4

 

 

z5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Конец

Рис. 1. ГСА работы МПУУ

30