Категории: ДомЗдоровьеЗоологияИнформатикаИскусствоИскусствоКомпьютерыКулинарияМаркетингМатематикаМедицинаМенеджментОбразованиеПедагогикаПитомцыПрограммированиеПроизводствоПромышленностьПсихологияРазноеРелигияСоциологияСпортСтатистикаТранспортФизикаФилософияФинансыХимияХоббиЭкологияЭкономикаЭлектроника |
Проблемы возникающие при кодировании.
Кодирование любого объекта из общего числа объектов, равному 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) Противогоночное кодирование состояний автомата. Оно приводит к увеличению числа состояний автомата. Частным случаем такого кодирования является соседнее кодирование, при котором на каждом переходе изменяется состояние только одного ЭА: 101à111à110à100à… 2) Тактирование входных сигналов Сi ÞtCi. В этом случае предъявляются жёсткие условия к длительности тактирующего сигнала t, которая должна быть не больше времени задержки в цепи обратной связи. (см. рис.38) 3) Использование двойной памяти на MS – триггерах и им подобных. В синхронных автоматах гонки отсутствуют. В них, как правило, используют триггеры с двойной памятью.
Пример 3.2. Осуществим кодирование символов алфавитов абстрактных автоматов S1 и S2 из раздела 3.2.2. Они заданы на входном x={x1,x2,x3,x4} и выходном y={y1,y2,y3} алфавитах. Кроме того автомат Мура S1 определён на алфавите состояний A1={a1,a2,a3,a4}, а автомат Мили S2 на алфавите A2={a1,a2,a3}. Определим разрядность кодов символов: 1. Алфавита состояний для S1: nQ=]log2na[=log24=2 (автомат Мура). Возможно na!=4!=24 способов кодирования Для S2: nQ=]log2na[=]log23[=2 (автомат Мили). Возможно =4*3*2=24 способов кодирования. 2. Входного алфавита nC=]log2nX[=log24=2 Возможно nX!=4!=24 вариантов кодирования. 3. Выходного алфавита nZ=]log2nY[=]log23[=2 Возможно =4*3*2=24 вариантов кодирования.
Рис. 3.20. - таблица кодирования символов входного алфавита, рис. 3.21. - таблица кодирования символов выходного алфавита, рис. 3.22. - таблица кодирования символов алфавита состояний.
Для автомата S2 таблица кодирования символов алфавита состояний A2 включает только первые три строки таблицы на рис. 3.22. Структурные автоматы имеют nC=2 входов, nZ=2 выходов и реализуются на nQ=2 элементарных автоматах. Получение кодированной таблицы переходов и выходов.
Исходными данными для построения кодированной таблицы переходов и выходов являются: 1) Таблицы переходов и выходов абстрактного автомата. 2) Таблицы кодирования символов алфавита абстрактного автомата. Таблица кодирования получается путём подстановки двоичных кодов символов в таблицу переходов и выходов абстрактного автомата.
Пример 3.3 Для описанных выше автоматов S1 и S2 кодированные таблицы переходов и выходов изображены на рис.3.23,3.24. Они получаются путём кодирования таблиц на рис. 3.8 и 3.9. с использованием таблиц на рис. 3.20.,3.21. и 3.22.
Таблицы задают переходы элементарных автоматов. По кодированной таблице переходов находят функции внешних переходов элементарных автоматов, а по кодированной таблице выходов - функции выходов.
|
|||||
Последнее изменение этой страницы: 2016-08-11 lectmania.ru. Все права принадлежат авторам данных материалов. В случае нарушения авторского права напишите нам сюда... |