Курсовая работа: Разработка арифметико-логического устройства, выполняющего операции сложения и вычитания в прямом двоичном коде
2.1 Задача структурного синтеза
Процесс построения схемы автомата обычно разделяют на две относительно независимых стадии: абстрактный и структурный синтез. На стадии абстрактного синтеза, исходя из заданных условий работы, выполняется построение таблиц переходов и выходов автомата. Задачей структурного синтеза является построение функциональной схемы автомата. Исходными данными для стадии структурного синтеза являются таблицы переходов и выходов автомата, система логических элементов, тип элемента памяти, а также дополнительные условия, накладываемые на качество и на работу схемы, например: время работы, допустимость риска, условия связи с внешней средой, стоимость и т.п.
Следует отметить, что исходные данные и круг вопросов, решаемых на стадии структурного синтеза, могут существенно изменяться. Например, в некоторых случаях при структурном синтезе решают задачу выбора искомой схемы. В дальнейшем изложении совокупность исходных данных и задач, а структурного синтеза предполагаются такими, как они описаны в начале настоящего параграфа.
2.2 Обобщенная структурная схема автомата
На стадии абстрактного синтеза обычно пользуются представлением автомата в виде одного блока, имеющего один вход и один выход. На стадии структурного синтеза автомат изображают в виде обобщенной структурной схемы, приведенной на рисунке 2.2 т n входных и m выходных каналов, по которым в подавляющем большинстве случаев передаются двоичные сигналы x1 , x2 ,…, xn и z1 , z2 ,…, zm . Переменные x1 , x2 ,…, xn называют входными переменными, а z1 , z2 ,…, zm – выходными переменными или функциями выходов автомата.
Рисунок 2.2. Обобщенная структурная схема автомата
Рассматриваемая схема состоит из двух частей: комбинационной схемы (КС) и набора элементов памяти (ЭП). Переменные y1 , y2 ,…, yh , соответствующие выходным сигналам элементов памяти, называют внутренними переменными автомата. Переменные y1 ', y2 ',…, yh ' используются в схеме для обозначения входных сигналов, изменяющих состояние элементов памяти, и называют функциями возбуждения . В качестве элементов памяти на практике чаще всего используют элементарные автоматы.
В приведенной схеме наборы значений входных переменных x1 , x2 ,…, xn соответствуют буквам входного алфавита Р абстрактного автомата, наборы выходных переменных z1 , z2 ,…, zm - буквам выходного алфавита W, y1 , y2 ,…, yh - состояниям абстрактного автомата.
2.3 Структурная схема с преобразователями входных и выходных сигналов
В общем случае комбинационная схема в приведенной структурной схеме автомата может решать несколько различных задач. Если эту схему разбить на подсхемы так, чтобы каждая задача решалась отдельной подсхемой, то структурная схема автомата может быть представлена в виде, изображенном на рис. 2.3. В этой схеме комбинационная схема КС1 вырабатывает функции выхода, КС2 – функции возбуждения, преобразователь кодов ПК1 используется для перекодирования входных сигналов, а преобразователь кодов ПК2 – для преобразования выходных сигналов. Наличие преобразователей кодов ПК1 и ПК2 не является обязательным в структурной схеме автомата, но в некоторых случаях их включение в схему позволяет добиться уменьшения сложности, упростить процесс построения или контроля работы схемы автомата.
Рисунок 2.3. Структурная схема с преобразователями входных и выходных сигналов
Необходимо отметить, что вид структурной схемы автомата в сильной степени зависит от используемой системы логических элементов. Например, при построении схемы на элементах с синхронизацией, сохраняющих результат логической операции до момента прихода считывающего сигнала, необходимость в элементах памяти часто отпадает. В этом случае структурная схема автомата может быть изображена в виде, приведенном на рисунке 2.3.1.
Рисунок 2.3.1. Упрощенная Структурная схема с преобразователями входных и выходных сигналов
2.4 Структурная схема на элементах импульсного типа
При построении схемы из логических элементов импульсного типа, работающих с импульсными сигналами длительностью t, и элементов памяти с выходными сигналами потенциального типа в структурную схему необходимо включить цепи синхронизации и линии задержки (ЛЗ), как это показано на рис. 4.
Рисунок 2.4. Структурная схема с линиями задержки
Линии задержки в такой схеме осуществляют задержку входных сигналов элементов памяти. Если время задержки (tз ) этих линий немного больше величины t, то состояние элементов памяти остается неизменным на время действия синхронизирующего сигнала (СИ).
2.5 Основные этапы структурного синтеза
Процедуру структурного синтеза удобно рассматривать, расчленив ее предварительно на несколько связанных между собой этапов.
1. Выбор структурной схемы автомата. Этот этап синтеза во многом определяет последовательность построения схемы. Примеры того, как заданная система элементов влияет на структурную схему автомата, были приведены в предыдущем параграфе. Структурные схемы автомата, применяемые при построении схемы на потенциальных элементах, будут рассмотрены в п. 9, а структурные схемы, использующие типовые блоки, будут описаны в п. 10. Основная трудность этого этапа заключается в отсутствии формальных критериев для выбора структурной схемы. Одним из главных факторов, определяющих выбор структурной схемы, является опыт разработчика.
2. Кодирование входных и выходных сигналов. Кодирование входных сигналов заключается в том, что каждой букве pi входного алфавита абстрактного автомата однозначным образом ставится в соответствие набор значений двоичных переменных х1 , х2 ,…, хn . Очевидно, что кодирование является однозначным, если число букв входного алфавита не превышает числа различных двоичных наборов переменных х1 , х2 ,…, хn . Исходя из этого, количество двоичных переменных n, необходимое для кодирования r букв входного алфавита, можно определить из условия r Ј 2n. Кодирование выходных сигналов состоит в том, что буквам выходного алфавита wi абстрактного автомата аналогичным образом ставятся в соответствие наборы значений выходных переменных z1 , z2 ,…, zm . Результаты кодирования обычно заносятся в таблицы кодирования входных и выходных сигналов.
В некоторых задачах кодирования входных и выходных сигналов задается в качестве условий работы схемы на этапе абстрактного синтеза. В таких случаях в структурную схему автомата могут быть включены преобразователи кодов. При этом кодирование заключается в том, что каждому набору значений переменных х1 , х2 ,…, хn однозначным образом ставится в соответствие набор переменных х1 ', х2 ',…, хq ', а каждому набору переменных z1 , z2 ,…, zm – набор переменных z1 ', z2 ',…, zs '. Заметим, что в качестве преобразователей кодов на практике часто используют дешифраторы. Необходимо иметь в виду, что кодирование входных и выходных сигналов может существенно влиять на сложность комбинационной части схемы так же, как и кодирование состояний автомата.
3. Выбор числа элементов памяти и кодирование состояний автомата. Кодирование состояний заключается в том, что каждому состоянию si О S однозначным образом ставится в соответствие набор внутренних переменных у1 , у2 ,…, уh . Состояния и соответствующие им коды обычно представляют в виде таблицы, которая называется таблицей кодирования состояний автомата.
Если автомат имеет l состояний, то, для того, чтобы получить однозначное соответствие, необходимо иметь не менее l различных двоичных кодов. Минимальное число элементов памяти, необходимое для получения однозначного кодирования, h=log2 l.
Кодирование состояний существенно влияет на сложность комбинационной части схемы автомата. Для того, чтобы упростить комбинационную схему, часто используют избыточное кодирование, выбирая h большим, чем это необходимо для получения однозначного кодирования. Избыточное кодирование используется также для построения схем без состязаний. Кодирование состояний кажется целесообразным выполнять совместно с кодированием входных и выходных сигналов, однако такая задача оказывается весьма сложной и практически не реализуется.