Проблемы возникающие при кодировании.
Кодирование любого объекта из общего числа объектов, равному n, может быть выполнено:
способами, где . Если n=2k, то число вариантов кодирования в точности равно n! Выбирается такой вариант кодирования, который обеспечивал бы минимальные аппаратные затраты. Эффективных алгоритмов выбора оптимальных вариантов кодирования не существует, и задача решается методом перебора.
При кодировании состояний, помимо проблемы оптимального кодирования в указанном выше смысле, необходимо решать задачу борьбы с гонками, или состязаниями. Вследствие разброса времени перехода отдельных ЭА возникают промежуточные состояния, которые могут привести к неправильной работе автомата.
Н апример, пусть для ЭА Q1,Q2,Q3 имеем переход из ak=<1,0,0> в am=<1,1,1>.
При переходе может возникнуть состояние <1,1,0>, если Q2 быстрее изменяет своё состояние, чем Q3 (гонки выигрывает Q2) или <1,0,1>, если Q3 быстрее изменяет своё состояние, чем Q2 (гонки выигрывает Q3). Возможны два случая:
В случае «а» при воздействии входного сигнала xi достигается верное состояние am, в случае «б» вместо состояния am переходим в другое состояние al. В первом, случае автомат функционирует правильно, и гонки являются некритическими, во втором неправильно - гонки являются критическими.
Для борьбы с состязаниями используют различные методы:
1) Противогоночное кодирование состояний автомата. Оно приводит к увеличению числа состояний автомата. Частным случаем такого кодирования является соседнее кодирование, при котором на каждом переходе изменяется состояние только одного ЭА: 101111110100…
2) Тактирование входных сигналов Сi Ci. В этом случае предъявляются жёсткие условия к длительности тактирующего сигнала , которая должна быть не больше времени задержки в цепи обратной связи.
3) Использование двойной памяти на MS – триггерах и им подобных.
В синхронных автоматах гонки отсутствуют. В них, как правило, используют триггеры с двойной памятью.
- 0.1. Понятие организации эвм.
- Функция, структура и организация систем.
- Основные факторы, влияющие на принципы построения эвм.
- 0.2. Содержание курса.
- 1. Представление информации в эвм.
- 1.1. Системы счисления.
- 1.1.1. Позиционные системы счисления.
- Пример 1.1.
- 1.1.2. Двоично-кодированные системы счисления.
- Пример 1.2.
- 1.2. Преобразование из одной системы счисления в другую.
- 1.2.1. Преобразование целых чисел. Метод деления.
- Пример 1.7.
- Метод деления.
- Пример 1.8.
- Пример 1.9.
- 1.3. Представление информации в эвм.
- 1.3.1. Двоичные числа.
- 1.3.2. Кодирование десятичных чисел и алфавитно-цифровой информации.
- Пример 1.10.
- Пример 1.11.
- 1.3.3. Логические значения.
- 1.4. Машинные коды.
- 1.4.1. Прямой код.
- Пример 1.12.
- 1.4.2. Дополнительный код.
- Пример 1.13.
- 1.4.3. Обратный код числа.
- Пример 1.14.
- 1.4.4. Выполнение арифметических действий с кодами.
- Пример 1.15.
- 1.4.5. Признаки переполнения разрядной сетки.
- Пример 1.16.
- Пример 1.17.
- 2. Синтез комбинационных устройств.
- 2.1 Логические переменные и функции.
- Физическая природа.
- Пример 2.1.
- 2.2 Элементарные функции.
- 2.2.1 Функции одной переменной.
- Элемент повторения.
- Элемент «не».
- 2.2.2 Функции двух переменных.
- 2.3 Функции многих переменных.
- Примеры (2.2.) базисов:
- Основные законы Булевского базиса:
- Действия с константами «0» и «1»:
- Правило введения и исключения лишних связок:
- 2.4. Задание функции комбинационных логических схем.
- Пример 2.5.
- Пример 2.6.
- 2.6. Минимизация нормальных форм булевых функций.
- 2.7 Минимизация с помощью диаграмм Карно.
- 2.8 Топологическая интерпретация правил минимизации.
- Правила минимизации:
- 2) Коэффициент объединения по входу.
- 3) Быстродействие.
- Пример 2.10.
- 2.9.1 Порядок синтеза комбинационных схем.
- 2.9.2 Элементы «и», «или», «не».
- 2.9.3 Элементы «и-не», «или-не».
- Пример 2.14.
- 2.10. Цифровые устройства на программируемых бис с матричной структурой.
- 2.10.1. Матричная реализация булевых функций.
- 2.10.2. Программируемые логические матрицы (плм).
- 2.10.3. Другие структуры матричных бис.
- Постоянные запоминающие устройства (пзу).
- Пример 2.15.
- Программируемая матрица вентилей (пмв).
- Программируемые матрицы логики (пмл).
- 3. Построение цифровых устройств автоматного типа.
- 3.1. Понятие автомата.
- 3.2. Синтез абстрактных автоматов.
- 3.2.1. Определение абстрактного автомата.
- 3.2.2. Методы задания автоматов.
- Задание автомата в виде графа переходов и выходов.
- Пример 3.1.
- Задание автомата в виде таблиц переходов и выходов.
- Задание автомата в виде матриц переходов и выходов.
- Табличная форма представления матриц переходов и выходов.
- 3.2.3. Минимизация числа внутренних состояний абстрактных автоматов.
- 3.3. Структурный синтез конечных автоматов.
- 3.3.1 Этапы структурного синтеза автоматов.
- 3.3.2. Кодирование символов алфавитов абстрактных автоматов.
- С труктурная схема автомата.
- Проблемы возникающие при кодировании.
- Пример 3.2.
- 3.3.3. Получение кодированной таблицы переходов и выходов.
- Пример 3.3.:
- 3.3.4. Определение функций внешних переходов.
- 3.3.5 Элементарные автоматы и их свойства.
- 3.3.6 Определение функций возбуждения элементарных автоматов.
- Литература: